1

MySQL の結果セットを取り、Neo4J DB にノードと関係を追加するインポーター スクリプトを作成しようとしています。簡単にするために、結果セットには次のフィールドがあります。

  • アプリケーションID
  • 出願日
  • アカウントID

、 、フィールドApplicationのラベルを持つノードと、フィールドとそれらの間の関係を持つラベルを持つ別のノードを作成したいと考えています。application_idamountapplication_dateAccountaccount_id

私のSQLクエリはapplicationsテーブルからのものなので、そこで重複することを恐れていませんが、account_idは複数回出現する可能性があり、明らかにそのために複数のノードを作成したくありません.

私はneographyを使用しています(しかし、もっと簡単なものがあれば喜んで切り替えます)。それを達成するための最良の(最も簡単な)方法は何ですか?私のスクリプトは開始前にデータベースを削除するので、残り物を処理する必要はありません。

前にインデックスを作成して使用する必要がありますcreate_unique_nodeか?
「MATCH .. CRAETE UNIQUE ..」を使用してサイファーでやりたいことができると思いますが、ネオグラフィーでそれと同等のものは何ですか? index_nameがどのように方程式に入るかわかりません...
Account の制約を定義する必要がありますか?

ありがとうございます。グラフ DB を使用するのは初めてなので、ここでコンセプトを見逃していたら申し訳ありません..

4

1 に答える 1

1

あなたの説明から、Neo4j 2.0 に付属する制約を使用する必要があるようです: http://docs.neo4j.org/chunked/milestone/query-constraints.html#constraints-create-uniqueness-constraint

CREATE CONSTRAINT ON (account:ACCOUNT) ASSERT account.account_id IS UNIQUE

次に、すべての挿入に MATCH .. CREATE UNIQUE 句を使用できます。neography を使用してサイファー クエリを送信できます。こちらの例を参照してください: https://github.com/maxdemarzi/neography/wiki/Scripts-and-queries

于 2014-02-18T10:03:07.490 に答える