1

私は Neo4j API を使用して、数百万のレコードをバッチ挿入しました。これは通常、個別に行うとはるかに時間がかかります。インポートはかなり速く完了しましたが、挿入した何百万ものレコードが表示されません。Neo4j は、バッチ挿入のために何らかの形式のキューを保持し、時間の経過とともに挿入しますか?

もしそうなら、どうすればこのキューの進行状況を確認できますか? カウントを行っていますが、レコードが増加していることに気付きましたが、ペースは非常に遅いです。

Neography gem のバッチ挿入 ( https://github.com/maxdemarzi/neography/wiki/Batch ) を使用しており、バッチ挿入を行うコードは以下のとおりです。

User.find_in_batches(batch_size: 500) do |group|
   $neo4j.batch(*group.map { |user| ["create_unique_node", "users", "id", user.id, user.graph_node_properties] })
end

Ubuntu 12.04 LTS で Neo4j 2.1.2 エンタープライズ エディションを実行しています。

4

1 に答える 1

0

挿入が終了した後、バッチ インサーターを正しくシャットダウンしましたか?

どの Neo4j バージョンと OS を使用していますか?

また、メモリ構成が正しいことを確認してください。ノードストアと関係ストアのメモリ マッピングを正しく構成します。これについては、 Rik のブログ投稿を参照してください。

これはキューではなく、それらのレコードを直接書き込んでいます。どのように「チェック」して数えますか?データベースに同時にアクセスしてはなりません。

コードを共有できますか?

于 2014-07-27T20:22:59.913 に答える