私は毎回ランダムにグラフからノードにしようとしています。データベースのノード数は24600968です。次のクエリNeo4j:巨大なデータを使ったゆっくりとした選択操作
MATCH (n:Employee)
WITH n AS emp,rand() AS ids ORDER BY ids LIMIT 10
MATCH (n:Company)
WITH emp, n AS com,rand() AS ids ORDER BY ids LIMIT 10
RETURN emp.guid,com.guid
は非常に長い時間がかかります。時間は
Returned 10 rows in 306863 ms.
どのように私はこのプロセスをスピードアップできますか?
あなたのクエリの目標は何ですか? 10人の従業員を無作為に選んでデータベースをサンプリングしますか? –
私はグラフデータシミュレータを開発しています。どこでノードをランダムに選んで関係を作成しなければならないのですか。 –
私は参照してください。私は "適切な"サンプリングをするのは良い考えがありませんが、http://jexp.de/blog/2014/03/sampling-a-neo4j-database/に基づいて、あなたは次のようなものを試すことができます: 'MATCH(n )where rand()<0.1 RETURN n LIMIT 10'。残念なことに、これは斜めのサンプルを与える - 最初のノードは、サンプルにそれを作る可能性が非常に高い。 –