我對neo4j仍然很陌生。我寫了一個小型RESTFUL服務,它通過REST將節點插入到neo4j數據庫(服務器)中作爲PoC。該結構看起來是這樣的:root - [NODES] - > n - > [NODE] - >節點Neo4j密碼通過REST在中心節點上查詢性能
n節點是「居中」的節點。我計劃添加其他節點作爲不同的節點類型(例如產品/類別/文檔/屬性/用戶...)
在我的第一個例子中,我添加了約。 1.000個節點。現在我試圖增加節點的數量並查詢該節點。現在我面臨着一種表現「問題」。這是我的查詢,在neo4j(1.6.1)Web控制檯執行
START x =節點(0)MATCH PATH =(x - [:NODES] - >居中 - [:NODE] - >節點)返回節點ORDER BY node.id LIMIT 10
START X =節點(0)MATCH PATH =(X - [:NODES] - >爲中心 - [:NODE] - >節點)返回計數(*)
我需要查詢分頁。第一個應該選擇要顯示的元素,第二個要計算頁面。
查詢時間: 1.000節點:〜120個毫秒 4.000節點:〜200 - 300個毫秒 6.000節點:〜250 - 500毫秒
Cypher支架查詢時間增加非常快(在我看來)。我計劃以這種方式添加〜2000,000個節點。我的查詢有什麼問題嗎?是否有可能讓他們更快? (我已經設置了我的neo4j堆大小爲100M,10k節點應該怎麼樣)
在此先感謝!
我會試試:)謝謝Andres! – Alebon 2012-04-12 15:12:57
是的,這似乎更好。現在我有10k個節點。第一個查詢從〜300-500ms降到〜100ms,計數查詢從〜110ms降到50-60ms。喜歡它;) – Alebon 2012-04-12 15:23:09
另外一個問題:使用那些居中的節點是否很常見? – Alebon 2012-04-12 15:25:25