2013-10-16 26 views
0

我打算將Titan與Fanus一起用於圖形數據模型。泰坦 - 卡桑德拉和推送通知

數據存儲的選擇 - 雖然卡桑德拉似乎是明顯的選擇,但我還沒有決定數據存儲。有沒有人對Titan和其他數據存儲進行過基準測試? 推送通知:需要將遍歷響應推送給客戶端。任何關於Node.JS(基於事件)或Vaadin(基於對象)的案例研究? 謝謝!

回答

2

我對Titan進行了一項中等規模的保險公司的實驗,認爲Cassandra是3-4百萬保險保單的最佳選擇(因爲這聽起來很大)。我很驚訝地發現伯克利和PersistIt更合適。

要點:每個後端都有優勢,您需要根據數據集的特徵權衡這些優勢。下面是一個簡短的總結:

的BerkeleyDB和PersistIt圖形與10-100s萬個頂點

實際限制。但是,對於這種大小的圖形,兩個存儲後端都表現出高性能,因爲所有數據都可以在同一個JVM中本地訪問。

Hazelcast

低延遲優化的替代方案,擅長均勻地訪問的曲線圖讀爲主的工作負載。請注意,Hazelcast不提供持久性持久性。該後端的理想圖形可以完全適合一臺或多臺機器的內存。另外,爲了使這個存儲後端具有成本效益,大多數圖形應該定期訪問。

的HBase和Cassandra的

當然這些後端都爲大圖(10億到幾千億的頂點)組成。請注意,它們通常在Berkeley或PersistIt上的中小型圖表上表現優於大盤。兩者之間的選擇歸結爲一致可分區系統(HBase)和可用分區系統(Cassandra)之間的選擇。

你也可以考慮一下這款在半過時的CAP定理的條件:

https://github.com/thinkaurelius/titan/wiki/images/titan-captheorem.png