ノードのバッチを頻繁に挿入できるようにする必要があります。それは完全に新しい挿入か、既存のノード (および関係) への更新である可能性があります。
Neo4j で BatchInsert 機能を試した後、ノードの次のバッチが到着したときに、それらをグラフに更新 (またはグラフに追加) することはできないという制限を見つけました。代わりに、以前にロードした他のすべてを最初から再度ロードする必要があります。
新しいデータが到着したときにインポートして更新できるようにするカスタム インポーターを実装できるかどうかを確認するために、neo4j-kernel コードベースを詳しく調べました。BatchInserterImpl は、createNodes、createRelationships などのロジックの要となるクラスのようです。予想どおり、nodestore (NeoStore オブジェクト) がコンストラクターで新たに作成されていることがわかります。
この問題を回避するにはどうすればよいですか? グラフデータベースに既に追加したものすべてを再インポートする必要がないように、更新が処理されるデータを挿入する他の実装はありますか? そうでない場合、ユースケースを支援するために既存のコードを拡張する際の推奨事項は何ですか?
また、インデックス作成を追加し、トランザクションをサポートする必要があります (少なくとも基本的なレベルでは)。