0

だから私は最近neo4jを調べていて、最後に何かに興奮したのはいつだったか思い出せません。私はそれが最もクールなことだと思います。まだまだ学ぶことはたくさんありますが…

次のようなものを考え neo4j グラフ

てみます。私とサムの両方に誕生日があります。彼は10月18日、私のは10月12日です。どうすればサムの誕生日を見つけることができますか? サムはその「生まれた日」などと関係がありますか?

私は、このモデリングに正しい方法でアプローチしていない可能性があり、それが私の障害である可能性があることを認識しています. すべてが何らかの形で関連しているため、実際には何が一意の属性であり、何が単に関係であるかを判断するのは難しいため、混乱を招きます。

誕生日を聞くなら、誕生日 -> 10 月 18 日 -> サム、10 月 12 日 -> 私。

私が私を求めるなら、私は私が欲しい -> 誕生日 -> 10月12日

10 月 12 日と聞くと、10 月 12 日 -> 誕生日 -> 私 (これでいいと思います) となります。

そう... 物事のモデリングと、これらを正しく結び付ける方法についての洞察を得たいと思っています。

4

2 に答える 2

0

だから私は質問は、あなたがここに到達しようとしている答えは何ですか?

あなたは誕生日を持っている他の人を手に入れたいですか?質問を特に「Sam」に合わせない限り、これは(理論的には)「Sam」だけでなく、データベース内のすべてのユーザーを返します。

したがって、これをモデル化する1つの方法は、neo4jモデルに共通の参照ノードを用意し、すべての誕生日ノードを参照してから、次のようにトラバースすることです。

(Reference_Node)-[:BIRTHDAY_REFERENCE]->(Birthday)<-[:HAS_BIRTHDATE]-(User) where User.name='Sam'

これはあなたが探しているものですか?

于 2012-06-16T02:38:51.427 に答える
0

また、マルチレベル インデックス タイムラインhttp://docs.neo4j.org/chunked/stable/cypher-cookbook-path-tree.htmlにも興味があるかもしれません。「10 月に誕生日を持つすべてのユーザーを見つける」などの作業に役立ちます。 - ユースケースにこの種のクエリが含まれる場合、つまり。

于 2012-06-16T05:03:03.750 に答える