圖數據庫對比:Neo4j vs Nebula Graph vs HugeGraph

性能測試對比

本文系騰訊雲安全團隊李航宇、鄧昶博撰寫git

圖數據庫在挖掘黑灰團伙以及創建安全知識圖譜等安全領域有着自然的優點。爲了能更好的服務業務,選擇一款高效而且貼合業務發展的圖數據庫就變得尤其關鍵。本文挑選了幾款業界較爲流行的開源圖數據庫與 Nebula Graph 進行了多角度的對比。github

圖數據庫介紹

Neo4j

Neo4j 是目前業界普遍使用的圖數據庫,包含社區版本和商用版本,本文中使用社區版本。數據庫

HugeGraph

HugeGraph 是百度基於 JanusGraph 改進而來的分佈式圖數據庫,主要應用場景是解決百度安全事業部所面對的反欺詐、威脅情報、黑產打擊等業務的圖數據存儲和圖建模分析需求。具備良好的讀寫性能。安全

Nebula Graph

Nebula Graph 是一款開源的分佈式圖數據庫,採用 shared-nothing 分佈式架構,擅長處理千億節點萬億條邊的超大規模數據集,從而更好地服務企業級應用。架構

測試硬件環境

硬件測試環境

性能對比

咱們使用不一樣量級的圖從入庫時間,一度好友查詢,二度好友查詢,共同好友查詢幾個方面進行了對比,結果以下:分佈式

測試結果

能夠看到在導入性能上,數據量小的時候 Nebula Graph 的導入效率稍慢於 Neo4j,但在大數據量的時候Nebula Graph 的導入明顯優於其餘兩款圖數據庫;在 3 種查詢場景下, Nebula Graph 的效率都明顯高於 Neo4j,與 HugeGraph 相比也有必定的優點。性能

查詢語言對比

查詢語言對比

從查詢語句的角度出發,Gremlin 比較複雜,nGQL 和 Cypher 比較簡練,從可讀性角度出發,nGQL 比較類 SQL 化,比較符合你們的使用習慣。學習

可視化對比

查詢語言對比

在可視化方面,全部的平臺都還只處於可用狀態,Nebula Graph 的選擇性擴展在團伙挖掘中是一個加分項,可是在二度結果展現流暢度,展現結果自定義展現方面還有優化空間。測試

在比較了多款業內主要使用的開源數據庫後,咱們從性能,學習成本和與業務的貼合程度多個角度考慮,最終選擇了性能出衆,上手簡單,能大幅提升業務效率的 Nebula Graph 圖數據庫。大數據

本文首發於 Nebula Graph 論壇閱讀本文的你有任何疑問,歡迎前往論壇和做者進行討論,原帖傳送門https://discuss.nebula-graph.com.cn/t/topic/1013

相關文章
相關標籤/搜索