2012-06-11 25 views
7

我在需要用戶活動供稿生成的項目上工作。如果用戶A關注用戶B並且用戶B做了一些活動,則用戶A在他的主頁上看到它。用於用戶活動供稿的DB解決方案

現在我正在尋找堅持用戶供稿的DB解決方案。一旦用戶B提交了一些操作,所有跟隨用戶B的用戶都將收到一條記錄。我認爲用一個對象引用列表爲用戶保存一個mongodb文檔會比爲每個提要記錄保存一個文檔好。

另一方面,會有很多寫入和更多的讀取,並且mongodb鎖定了一個集合。也許這可能是一個問題。或者也許Redis可以用於此。和redis有併發的東西。我在這兩方面都不是很有經驗。

總結問題是什麼會更好地用於這項任務:Mongo,Redis或其他?

謝謝!

+0

聽起來好像數據庫平臺還沒有被選中呢? (否則,在第一次閱讀時,它最初聽起來像你有一個現有的數據庫,並想要某種類型的數據更改事件通知,如觸發器或其他)。如果這處於早期分析階段,並且實際的數據庫技術尚未(你是幸運的),那麼在提交特定的數據庫技術之前,我會充實整個體系結構/設計(和需求)(和fwiw,Mongo和Redis截然不同:一個是內存緩存,其他是持久性商店。) – michael

+0

您將使用哪種編程語言? – brycemcd

+0

@Bryce我正在使用python。 –

回答

2

請務必評估neo4j。它是爲您描述的許多相同用例而創建的。

+1

基於圖形的Db在計算與「朋友的朋友」相關的東西時非常出色,即:在圖中遍歷多於一個邊。這似乎不是這種情況 –

2

Cassandra對於自託管活動訂閱源而言是經過驗證的選擇,雖然它通常被認爲是複雜的運行和操作。

現在有第三方/託管的選項,如GetStream.ioDynamoDB

相關問題