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

友達関係をMongoDBに保存しますか?

    friend_idsのリストを保持する ユーザーでは、私がお勧めするものです。いくつかの理由、

    1.ユーザーにクエリを実行すると、すべての友達のリストが事前に利用可能になります。

    2.リクエスト(保留中、承認済み)も、それぞれのIDがユーザーの友達リストの両方に存在する必要があることを確認することで処理できます。だから、私はクエリすることで実際の友達と受け入れられた友達のリストを得ることができます

    my_id, my_friend_ids = user._id, user.friend_ids
    my_friends = db.users.find({'_id':{'$in': my_friend_ids}, 'friend_ids': my_id})
    

    はい、友情を削除するときは、$pullする必要があります 両方のユーザーのフレンドリストからですが、その頻度ははるかに少なくなります。ただし、頻繁に使用されるフレンドリストを取得する際のクエリは少なくなります。




    1. redisサーバーが接続を閉じたようです

    2. あるコレクションから別のコレクションへのmongoコピー(同じデータベース上)

    3. MongoDBでデータベースとコレクションを管理する方法

    4. RedisクラスターでのトランザクションをサポートするRedisクライアント(Javaを推奨)はありますか?