プログラムでArangoDBでエッジをすばやく作成する最も簡単な方法は何ですか?
共通の属性に基づいてドキュメント間の関係を作成したいと考えています。属性を選択して、コレクション A のすべてのドキュメントに対して、同等の属性で同じ値を持つコレクション B のすべてのドキュメントにエッジを作成できるようにしたいと考えています。
たとえば、電子メール メッセージをコレクションにインポートし、人を別のコレクションにインポートした場合、電子メールとコレクションの間にエッジを生成したいと考えています。電子メールのスキーマは次のようになります。
{
"_key":
"subject":
"body":
"from":
"to":
}
個人のスキーマは次のようになります。
{
"_key":
"name":
"email":
}
from
電子メール メッセージのおよびフィールドの値がto
、 people コレクションにある可能性のある電子メール アドレスに対応しているとします。
コレクション、属性、およびエッジ パラメーターを入力として取得できるようにしたいと考えています。次に、人物コレクション内のすべてのドキュメントに対して、from
属性に同じ電子メール アドレスを持つ電子メール コレクション内のすべてのドキュメントにエッジを作成します。現在のドキュメントのemail
属性。
これまでのところ、Foxx がこれに最適なツールであると考えていますが、ドキュメントには少し圧倒されています。
最終的には、エッジを定義するドキュメント間の共有属性に基づいて完全な CRUD を作成したいと考えています。これには、エッジが既に存在する場合はエッジを更新し、存在しない場合は作成する「アップサート」相当が含まれます。
コレクション内のすべてのドキュメントについて Arango にクエリを実行し、非常に多くの結果を返す必要があるため、標準の HTTP API を使用して個々の API 呼び出しでこれを行うと、非常に遅くなることがわかっています。
これを行う Foxx サービスは既にありますか? そうでない場合、どこから作成を開始すればよいですか?