2013-06-24 40 views
60

任何人都可以提供或指出Neo4j和泰坦之間的良好比較嗎? 我可以看到的一件事是規模 - 泰坦是擴展和需要一個潛在的可擴展數據存儲像cassandra。 Neo4j僅適用於HA,並擁有自己的嵌入式數據庫。任何其他利弊?任何特定的使用情況。 (目前Titan是否在任何地方使用?)有人試過neo4j vs泰坦 - 利弊

我也有以下鏈接:http://architects.dzone.com/articles/16-graph-databases-compared,它給出了圖形數據庫的客觀比較,但沒有太多關於Neo4j和泰坦之間的優缺點。

+0

你可以看看@ [Titan vs Neo4j](https://groups.google.com/d/msg/aureliusgraphs/vkQkzjN8fo0/9YYgqI4TA0QJ),它可以幫助你.. –

回答

16

很高興看到你探索圖形數據庫。我將與您的問題的Neo4j部分對話:

全球2000多於30個現在使用Neo4j生產各種用例,其中許多令人驚訝,即使對我們來說也是如此! (我們發明了性能曲線圖!)

客戶的部分名單可以發現如下: www.neotechnology.com/customers

的Neo4j已經全天候不間斷生產了10年,而該產品具有當然的,因爲那麼顯著發展它建立在一個非常堅實的基礎上。

大多數轉向圖形數據庫的公司 - 爲我所知的Neo4j說話 - 正在這樣做,因爲:a)他們的RDBMS無法處理連接查詢需求的範圍&,和/或b)來自建模領域的巨大便利和速度,這些領域是一個圖形(社交,網絡&數據中心管理,欺詐,投資組合,身份等),而不是表格。

踢,你可以在這裏找到了一些客戶的會談,從四個(很快5個)GraphConnect舉行今年在世界各地的主要城市是會議:

http://watch.neo4j.org/

如果」在倫敦,最後一個將在下週舉行: http://www.graphconnect.com

您將在下面找到Neo4j背後的一些技術總結以及一些客戶示例。要直接說出您的擴展問題:Neo4j具有獨特的架構,旨在通過允許橫向擴展以最大化查詢響應時間來提高查詢可預測性,使得每個實例都可以訪問圖形,而無需跳過網絡。 (需要更多的讀取吞吐量,只需添加實例)事實證明,這種方法適用於95%以上的圖表,其中包括一些生產客戶,其中一半以上的Facebook社交圖在單個Neo4j集羣中運行,支持「永遠在線」的24x7網站。

www.neotechnology.com/neo4j-scales-for-the-enterprise/

一個世界上最大的郵政投遞服務做了所有他們的實時包的Neo4j的路由。鐵路正在Neo4j上構建路由系統。一些全球最大的客戶正在將它們用於人力資源和數據治理,備用路徑路由,網絡數據中心管理,實時欺詐檢測,生物信息學等。

Neo4j的Cypher查詢語言是唯一的聲明式查詢語言明確地爲屬性圖構建。它從我們13歲的本地Java API(這是其他圖形數據庫已採用的藍圖的基礎)中汲取了所有經驗教訓,並將它們推廣到下一代語言。 Cypher是學習圖形和開發應用程序的好方法;並且如果您有特殊需求或價值「裸機」性能(即亞毫秒與單位數毫秒)的性能超出便利性總是存在本地Java API。 Neo4j從頭開始支持圖形,並有一個圖形存儲引擎,用於存儲圖形;不同於圖形數據庫生態系統中最近增加的一些新功能,它們在非圖形數據庫之上構建爲圖形庫,並受到一些固有限制。 (例如FlockDB,因爲它是基於MySQL的,仍將是什麼比一個跳更大的速度很慢。)

肯定會覺得免費的,如果你需要什麼更具體的聯繫新的球隊。我們將非常樂意爲您提供幫助! http://info.neotechnology.com/ContactUs.html

祝你好運!

+1

感謝Philip!到目前爲止,Neo4j已經足夠滿足我的需求,所以我已經開始使用它了。我相信它應該能夠按照自己的意義很好地擴展和擴展。另外我還看到neo4j集羣和備份對於小型starups(少於3名員工或$ 10萬美元的收入)是免費的,這對我來說真的很棒。我也意識到Neo4j有更大的佔地面積和風扇跟隨。我正在經歷泰坦,它似乎非常適合超大圖,所以我提出了這個帖子。我相信像...... – DevD

+1

這樣龐大的組織...... facebook和linkedin有一個合適的橫向擴展體系結構將是必不可少的。但正如我所說我不像其他人那樣大,我已經開始在幾個月前開始研究Neo4j,所以我不敢在排除方面排除Neo4j功能,而且我非常喜歡在Neo4j上工作。 – DevD

24

我們有一個社交圖,其中在一天中我們添加了近1百萬個節點和兩倍的邊。我們從neo4j圖開始,因爲是的,它的速度非常快,因爲它的存儲位於圖形引擎運行的同一臺機器上。但以下是我們想與您分享neo4j的經驗。

  1. 不適合實時查詢。我們有像twitter這樣的社交結構。我們必須展示用戶在其時間線上所遵循的所有用戶的最新20項活動(及其相關活動)。 我們有一些用戶跟隨1000多個用戶。我們爲此編寫的gremlin查詢(如果您感興趣,那麼我們可以共享gremlin查詢)真的產生了如此之多的GC,以至於具有8個cpu和48 gb ram的服務器用於凍結,我們必須重新啓動服務器才能使其再次聯機。
  2. 觀察到許多時間網絡分區。
  3. 在graoh數據庫中沒有非常需要的頂點中心索引。

最終,我們用gremlin查詢來消除服務器性能,我們不得不將數據庫更改爲titan。

土衛六上我們得到合理的性能,並且還縮放是很容易的,因爲我們正在使用Cassandra的作爲後端存儲。但是請注意,在這裏使用gremlin也不是一個好主意,因爲multiget查詢非常難看,沒有multiget,它的查詢變得非常緩慢。

+2

嗨。我真的很想知道更多關於你的設置。如果你能寫博客會很酷。如果你更喜歡在twitter或gmail上私下談論im sorenbs。 – sorenbs

+2

爲什麼選擇Gremlin而不是Cipher?這是Neo 1.9還是2?只是好奇。 –

+0

嗨,其現在已經超過了,因爲我們用它一年。這絕對不是2,1.6或1.7。我不記得確切。那時cypher並不是那麼受歡迎,它仍然處於新生的形式。 Titan優於neo4j,因爲我現在認爲它的能力可以擴展並提供多個頂點中心索引(VCI),在我們的例子中,它變得非常重要,因爲我們通常有非常大的子集,並且沒有VCI,它變得非常昏昏欲睡。 – user2772346