sql >> Database teknologi >  >> NoSQL >> MongoDB

Lagring af venskaber i MongoDB?

Holder en liste over friend_ids i en bruger, er hvad jeg vil anbefale. Få grunde,

1. Du forespørger en bruger, og du har en liste over alle venner til rådighed på forhånd.

2.Anmodningerne (afventer, accepteret) kan også håndteres ved at se, at et respektive id skal være til stede i begge brugerens venneliste. Så jeg kan få en liste over faktiske og accepterede venner ved at forespørge

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

Ja, mens du fjerner et venskab, skal du $pull fra vennelisten over begge brugere, men hyppigheden af ​​det ville være meget mindre. Men du spørger mindre om at få vennelisten, som ville blive brugt ofte.




  1. Docker-compose , alligevel for at angive en redis.conf fil?

  2. Håndtering af forbindelse til redis fra Python

  3. Udførelse af regex-forespørgsler med PyMongo

  4. Spring data mongodb - Muligheden 'markør' er påkrævet