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

メッセージアプリのMongoDB構造

    この質問は古いようですが、興味のある人には同様の質問があり、1つの回答が実行可能に見えます https://stackoverflow.com/a/30830429/132610

    Conversation : {
     id: 123,
     members: [ user_id1, user_id2 ]
    }
    Message { conversationId: 123, author: user_2, body: 'Hi what's up' }
    Message { conversationId: 123, author: user_1, body: 'Whanna ask some question on stackoverflow' }
    

    アップデート#1

    1)スケーラビリティ:MongoDBは、非常に大規模なコレクションで適切に拡張できます。コレクションごとに数十億のメッセージ。より大きなコレクションを複数のノードに分割できるシャーディングと呼ばれる手法があります。

    2)読書。 MongoDBにはインデックス作成メカニズムがあるため、読み取りは微調整されたデータベースエンジンに匹敵します。したがって、読書は問題になりません。特に、会話(グループ|部屋)の参加者が少ない場合、たとえば2人が互いにメッセージをやり取りする場合。



    1. $concatmongodbの2つのフィールド

    2. MongodbとExpress

    3. MongoDB:サブドキュメントフィールド値の個別のリストを取得するにはどうすればよいですか?

    4. シンプルな.NET分散キャッシングソリューションの提案