私は本当にneo4jの周りに頭を抱えていて、誰かが私を下の正しい方向に向けるのを助けることができると願っていました。neo4jのグラフ寮の動き
基本的には、イベントと呼ばれるもののリストがあります。このイベントは、患者が部屋に入ったり出たりすることを説明すると言える。
各イベントには一意の識別子があります。問題の生徒の識別子と、開始時間と終了時間(例えば、生徒が12:00に入室し、12:05に放置された)、およびその部屋の識別子も含まれています。
イベントおよびデータは、以下の線に沿って見えるかもしれません、要求される場合がありますパイプ区切り文字で区切られた列
ID|SID|ROOM|ENTERS|LEAVES
1|1|BLUE|1/01/2015 11:00|4/01/2015 10:19
2|2|GREEN|1/01/2015 12:11|1/01/2015 12:11
3|2|YELLOW|1/01/2015 12:11|1/01/2015 12:20
4|2|BLUE|1/01/2015 12:20|5/01/2015 10:48
5|3|GREEN|1/01/2015 18:41|1/01/2015 18:41
6|3|YELLOW|1/01/2015 18:41|1/01/2015 21:00
7|3|BLUE|1/01/2015 21:00|9/01/2015 9:30
8|4|BLUE|1/01/2015 19:30|3/01/2015 11:00
9|5|GREEN|2/01/2015 19:08|2/01/2015 19:08
10|5|ORANGE|2/01/2015 19:08|3/01/2015 2:43
11|5|PURPLE|3/01/2015 2:43|4/01/2015 16:44
12|6|GREEN|3/01/2015 11:52|3/01/2015 11:52
13|6|YELLOW|3/01/2015 11:52|3/01/2015 17:45
14|6|RED|3/01/2015 17:45|7/01/2015 10:00
質問は次のようになります。学生のxが訪れ、中にいるどの部屋
どのような順序
は、部屋間の学生の動きを何のように見える - 彼らは部屋を出るときに部屋の学生に行くんし、Y
それは十分に簡単に聞こえるが、私は自分自身を結び目に結びつけている。
私は学生と部屋
の両方のためのユニークな制約を作成し始めました(学生:学生)に制約を作成student.idが、私は、その後の部屋のために同じことをやったユニーク
で主張しています。
Iからヘッダ1000負荷CSVコミット周期使用
のようにロードされた生徒ファイル:// C:/event.csvを '線マージとして(S:学生{ID:line.SID})。
私も部屋と訪問のために同じことをしました。
上記の質問に答えることはできますが、関係を作成する方法は全くわかりません。各イベントには、生徒が入室してから退室するまでの時間が表示されますが、出席した部屋は表示されません。抽出物から出発して、学生が残した部屋が含まれるように抽出物を変更すべきか?誰かが私がどのように関係を作り出す必要があるかを話すのを助けることができるなら、それは非常に高く評価されるでしょう。
乾杯
優秀、感謝のヒープトム!私はapocを持っていませんが、ソートできるように日付/時刻のフィールドを数値として追加しました。また、ウェブサイトのトラフィックの分析を説明する一連のブログ記事があり、注文ページが訪問されました。これは、あなたが言及する第2のアプローチのようです。とにかく、あなたのすべてのおかげで、ありがとう! – c95mbq
ようこそ。 2つ(小)の発言。 APOCを追加すると、さらに多くの機能が提供されます。これはNeo4jリリースの一部ではありませんが、Neo4jチームの最善の方法で維持されています(リリースと歩調を合わせています)。第二に、クエリを実行するとき、私はあなたの時間が細かくないことに気付きました。誰かが部屋に入って部屋を出て、同じ "瞬間"(もちろん不可能)で次の部屋に入る可能性がありました。それはより複雑なクエリを混乱させるかもしれません。 –
おかげでトム。私は間違いなくapocを見ていますが、緑色なので、現時点ではまだneoを始めることはできません: -/ – c95mbq