Ho bisogno di compilare un sistema di analisi (reporting, creazione di grafici &) nella mia applicazione Django. In un mondo ideale potrei semplicemente interrogare il mio DB Postgres e ottenere i dati che voglio ma quando la quantità di dati nel DB passa attraverso il tetto, colpirò i colli di bottiglia delle prestazioni e altri problemi come l'inferno dell'indice.Data mining in un'applicazione Django/Postgres
mi chiedo se mi si potrebbe puntare in una direzione giusta per implementare questo:
- È questo un buon piano d'azione per usare un NoSQL DB come (CouchDB, MongoDB, Redis) e interrogare i dati da quella?
- Poiché Postgres e Django non supportano OLAP/MDX, dovrei seguire uno schema a stella in un altro database e interrogarlo?
Sto cercando di evitare due cose:
- Non voglio interrogare la mia attuale DB per analisi, come si potrebbe prendere un enorme calo di prestazioni.
- Mi piacerebbe mantenere la mia analisi il più aggiornata possibile, ad esempio, vorrei aggiornare in modo incrementale il mio data warehouse per avere i dati più recenti. Ogni volta, c'è un'operazione CRUD sul mio DB transazionale, vorrei aggiornare il data warehouse.
Questo è l'ennesimo scenario in cui non ho lavorato e sto cercando di capire il modo più rapido e migliore per realizzare.
Spero di essere stato abbastanza prolisso. Altrimenti, avrei spiegato volentieri di più.
Grazie a tutti
Dopo aver scavato intorno al web e utilizzando le conoscenze che ho, sono venuto per questa soluzione:
Utilizzare i Postgres per memorizzare i dati relazionali. In ogni operazione CRUD, chiamare il codice di analisi per eseguire i calcoli sui dati e archiviare i dati in un DB NoSQL come Redis/CouchDB.
Guardando questo buon confronto dei DB NoSQL (http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis), penso che Redis o CouchDB si adattino perfettamente. Destinato per l'analisi.
È possibile memorizzare Analytics calcolato in Redis/CouchDB e aggiornarli in modo incrementale quando i dati di origine cambiano.
Questa è una buona soluzione?
hi Mridang, sono molto interessato a questo thread. Seguo la tua domanda da questo è stato pubblicato. Forse il database di palo olap è una soluzione, ma non l'ho ancora testato. Sono pubblicato per notizie sul tuo progetto. C'è un modo per inviarti la mia e-mail in privato? – danihp