0

祖先型のデータを保存するルビーアプリを書いています。つまり、家系図。

アプリケーションの残りの部分では、MongoDBをストレージに使用しています。これは、階層構造に適しているためです。ただし、祖先データは、ある意味で階層的であるにもかかわらず、そのモデルに完全には適合しません。これらを処理するために、より適切なデータベース層にスワップする必要があるかどうかについて誰かが提案を持っているかどうか知りたいですか?

つまり、AはB(双方向)とペアになっていて、親CとDがあります。Bには親EとFがあります。AとBには子G、H、Iがあります。GはHとペアになっています。

したがって、1つのノードに2つの親ノードがあるため、再帰的ではありません。したがって、MongoDBでは、両方の親が同じツリーを重複して埋め込むため、埋め込みは意味がありません。ソーシャルグラフに近いのは、より厳密なだけです(2種類の関係しかありません)。Redisセットは非常にうまく機能すると思いますが、Polyglotの永続性でスタックを複雑にする前に、同様の構造を設計した可能性のある他の人からフィードバックを得ることができると期待していました。私がRedisで抱えているもう1つの懸念は、これらすべてのツリーをメモリに保存することは良い考えではないかもしれませんが、Redisの関係とMongoDBドキュメントのオブジェクトデータのみを保存する場合はおそらく問題ありません。

4

1 に答える 1

2

ドメインにはるかに近いように聞こえるので、グラフ データベースを試してみる必要があるかもしれません。http://nosql.mypopescu.com/post/498705278/quick-review-of-existing-graph-databasesを試すことができるものがかなりあります。

于 2010-11-22T10:49:38.647 に答える