0

私はサッカーの試合と、その試合でプレーする審判とチームをモデル化しようとしています。試合、審判、選手に基づいてノードを作成したいのですが、それらをモデル化するための最適なアプローチが明確ではありませんか? つまり、都市や試合の後にモデル化する必要がありますか? ルート ノード ID などを作成しますか?

後で探す情報は、次のようなものです。

1)。特定の審判のすべての試合を表示します (複数の都市にある可能性があります) 2)。審判が働いてホームチームが勝ったすべての試合を表示します 3)。ホーム チームの勝利数が最も多い審判をすべて表示しますか? 4)。特定の都市で最も活躍している審判を表示する

ご覧のとおり、あらゆる種類の質問があり、新しい人にとっては、これは少し圧倒される可能性があります. いくつかの本を読んでいるときに、上記のシナリオで専門家が助けてくれるかどうかを確認したかった. ここでも、すべての都市と審判と試合を接続するルート ノードが必要なのか、それとも物事を独立させておく必要があるのか​​ わかりません。フィードバックをお待ちしております。

4

2 に答える 2

1

現時点で、投稿したクエリを満たすと思われるモデルの 1 つ:

(チーム)-[:PLAYS]->(マッチ)

(マッチ)-[:HAS_REFEREE]->(審判)

(マッチ)-[:PLAYED_IN]->(都市)

PLAYS リレーションは、チームがホーム チームかどうかを示すプロパティを持つことができます。そのチームが勝ったかどうかを示すために、PLAYS リレーションにプロパティを設定することもできます。または、探しているものの大部分が勝利である場合は、(Team)-[:WON]->(Match) などの追加の関係を作成できます (ただし、引き分けをモデル化する方法を考える必要があります。試合で 2 つのチームのいずれかに WON 関係がない場合は、おそらく引き分けを示している可能性があります)。

1) 特定のレフリーのすべての試合: レフリーから開始し、Match to the Cities をトラバースします。レフリーのユニークなプロパティにインデックスを付けて、レフリーをすばやく検索できるようにする場合があります。

2) レフリーが勤務し、ホーム チームが勝ったすべての試合: レフリーから開始し、彼のすべての試合を検索し、WON 関係/プロパティおよびホーム チーム プロパティでフィルタリングします。

3) ホームチームの勝利数が最も多いすべての審判: 上記と同じ、すべての審判から開始

4) 都市の最もアクティブな審判: その都市から始めて、すべての試合とその審判を見つけます。

回答したいその他の質問 (特にホームチームのプロパティ、WIN/LOSE 関係、またはプロパティなど) に応じて、物事を少し動かすことができます。

そして、ルートノードはまったく必要ないと思います。それらすべてを見つけたい場合は、すべての試合/都市/審判などにインデックスを付けることができます

于 2013-07-08T13:17:49.483 に答える
1

私はフットボール/サッカーの試合のモデリングを行ったことがあります。

どのチームがホームとアウェイでプレーしたかを示す特定の関係タイプがありますが、Luanne が言ったこととほぼ同じです。ここでもモデルを構築しているときに発見したことを書いています - http://www.markhneedham.com/blog/tag/neo4j/page/2/

于 2013-07-08T22:39:41.153 に答える