我有一個擁有超過200萬個節點的圖形數據庫。我有一個應用程序需要一個社交圖,並對其進行一些推斷。作爲算法的一個步驟,我必須獲得兩個連接節點的關係[:朋友]的所有可能組合。目前,我有一個查詢,如下所示: match(a) - [:friend] - (c),(b) - [:friend] - (d)其中id(a)= {ida}和id(b )= {} IDB返回不同的C作爲第一,d爲第二neo4j笛卡爾產品性能改進
所以,我已經知道節點a
和b
,我想所有的可以從a
和b
朋友進行可能的對。 這顯然是一個非常緩慢的操作。我想知道是否有更有效的方式在neo4j中獲得相同的結果。也許增加索引可能有幫助?任何想法/線索都歡迎!
例 節點a
具有朋友:x
,y
節點b
具有朋友:g
,h
,i`` Then the result should be:
X,
克
X ,
ħ
X ,
我
ý,
克
ý,
ħ
ÿ,
我`
謝謝你的回覆。你能否解釋爲什麼這會有所幫助?我不知道朋友的平均數量,但差別很大。從少數(少於10)到數百甚至數千。 – 2014-11-05 16:36:46