0

単語とそれらの単語に関連付けられたドキュメントを含むデータセットがあります。これら2つのカテゴリに分類するために、それらにラベルを設定したいと思います。これを行うことでラベルを作成できました:

if not "Social Words" in graph_db.node_labels:
    neo4j.Schema.create_index(graph_db.schema, "Social Words", "word")

if not "Documents" in graph_db.node_labels:
    neo4j.Schema.create_index(graph_db.schema, "Documents", "url")

問題は、「単語」フィールドと「URL」フィールドに一意性を強制する必要があることです。次のようにノードとラベルを追加しています

doc,= graph_db.create({"url": url})
doc.add_labels("Documents")

私の質問は次のとおりです。

  1. get_or_create を使用してノードをラベル インデックスに追加する方法はありますか
  2. py2neo api には、ラベル インデックスに一意性を強制する方法がありますか
  3. これをすべて行うためのより良い方法はありますか。ドキュメントは少しあいまいです
4

1 に答える 1

1

答え:

  1. ノードをスキーマ インデックスに明示的に追加する必要がないため、いいえ。ラベルが存在する場合、これらは自動的に含まれます。
  2. Py2neo には、一意の制約管理をサポートする特定の機能はありません。
  3. 代わりに Cypher を使用できます ( http://docs.neo4j.org/chunked/stable/query-constraints.html#constraints-create-uniqueness-constraint )
于 2014-04-16T23:07:02.397 に答える