sql >> データベース >  >> NoSQL >> Redis

マスターデータベースとしてMongoDBを使用する場合、エンティティ間の関係を実装するために別のグラフデータベースを使用する必要がありますか?

    マイク、

    関係データをグラフデータベースに保存できるはずです。大きなグラフをトラバースする際のその高いパフォーマンスは、局所性に由来します。つまり、クエリをグローバルに実行するのではなく、ノードのセットを開始します(この場合、インデックスによって検索されるドキュメントと同じです。start-node-を格納することもできます。 mongoドキュメントにすばやくアクセスするためのID)。そこから、一定時間(データセットサイズなし)で任意の大きなパスをトラバースできます。

    その他の要件は何ですか(データセットのサイズ、同時アクセスの数など、関係/グラフの複雑さ)。

    クエリはグラフデータベースに非常によく適合し、その用語で簡単に表現できます。

    neo4jのようなgraphdbを入手し、ドメインをすばやくスパイクして、一般的な実現可能性を確認し、2番目のテクノロジーに投資する前に回答したい追加の質問を見つけることをお勧めします。

    P.S.グラフデータベースはドキュメントデータベースのスーパーセットであるため、まだ開始していない場合は、純粋なgraphdbアプローチを使用することもできます。そして、とにかく、一般的なドキュメントだけでなく、ドメインについて話したいと思います。 (たとえば、structrはNeo4j上に構築されたCMSです)。



    1. MongoDB$avgアグリゲーションパイプラインオペレーター

    2. MongoDB cursor.count()

    3. nodejs mongodbネイティブドライバーで文字列をObjectIdに変換する方法は?

    4. MongoDBのパフォーマンス-複数のデータベースを持つ