我正在處理大約50000條tweets,其節點具有類似的數據,如下所示。Neo4J Optimsation用於創建節點之間的關係
{ "date": "2017-05-26T09:50:44.000Z", "author_name": "djgoodlook", "share_count": 0, "mention_name": "firstpost", "tweet_id": "868041705257402368", "mention_id": "256495314", "location": "pune india", "retweet_id": "868039862774931456", "type": "Retweet", "author_id": "103535663", "hashtag": "KamalHaasan" }
我曾嘗試使用以下命令 MATCH (a:TweetData),(b:TweetData) WHERE a.location = b.location AND NOT a.tweet_id = b.tweet_id CREATE (a)-[r:SameLocation]->(b) RETURN r
並使用此命令我沒能做出的關係以製造具有相同位置的鳴叫之間的關係,因爲它是花了超過20小時仍然沒有產生結果。雖然對於hashtag關係,但它使用類似的命令工作正常,大約需要5分鐘。 是他們的任何其他方法來建立關係或任何方式來優化此查詢。
感謝您的建議,它真的幫了我。 我無法理解你說的第一部分,除了使用LIMIT和SKIP外,我們應該如何減少50k^2查找。 **確保您有一個關於TweetData(位置)的索引,這是最重要的更改** –
閱讀[索引和約束文檔](http://neo4j.com/docs/developer-manual/current /暗號/模式/索引/)。無論何時您有很多節點,並且您需要通過某個屬性查找特定類型的節點,最好在標籤/屬性上有一個索引,以便您的匹配變得非常快。 – InverseFalcon