我需要在我的Django應用程序中構建一個分析(報告,製圖&圖形)系統。在一個理想的世界中,我可以查詢我的Postgres數據庫並獲取我想要的數據,但是當數據庫中的數據量超過屋頂時,我會遇到性能瓶頸和其他問題,如索引地獄。Django/Postgres應用程序中的數據挖掘
我想知道,如果你能指出我在正確的方向來實現這一點:
- 這是一個很好的情況下使用的NoSQL數據庫一樣(的CouchDB,MongoDB的,Redis的),和查詢從數據那?
- 由於Postgres和Django沒有OLAP/MDX支持,我應該跟隨不同數據庫中的星型模式並查詢它嗎?
我期待,以避免兩件事情:
- 我不想查詢我的實際DB的分析,因爲它可能需要一個巨大的性能損失。
- 我想保持我的分析儘可能最新,即我想逐步更新我的數據倉庫以獲取最新數據。每次,我的事務性數據庫都有一個CRUD操作,我想更新數據倉庫。
這是另一種情況,我沒有合作,並試圖瞭解最快和最好的方式來完成。
我希望我一直冗長。如果不是,我很樂意解釋更多。
謝謝大家
各地的網絡挖掘和利用我的知識有後,我來此解決方案:
使用Postgres的存儲關係數據。在每個CRUD操作中,調用分析代碼對數據進行計算並將數據存儲在Redis/CouchDB等NoSQL數據庫中。
看看NoSQL DB的這個比較好的例子(http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis),我認爲Redis或CouchDB非常合適。針對分析。
我可以將計算的Analytics存儲在Redis/CouchDB中,並在我的源數據更改時以增量方式更新它們。
這是一個很好的解決方案嗎?
嗨Mridang,我對這個主題很感興趣。我按照你的問題發佈。也許palo olap數據庫是一個解決方案,但我沒有測試過它。我發佈了關於你的項目的消息。有沒有辦法將我的電子郵件私人發送給你? – danihp