sql >> Databáze >  >> NoSQL >> MongoDB

Ukládání přátelských vztahů v MongoDB?

Vedení seznamu friend_ids v uživateli, je to, co doporučuji. Několik důvodů,

1. Zeptáte se uživatele a máte předem k dispozici seznam všech přátel.

2. Požadavky (nevyřízené, přijaté) lze také zpracovat tak, že příslušná ID by měla být přítomna v obou seznamech přátel uživatele. Takže mohu získat seznam skutečných a přijatých přátel dotazem

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

Ano, při odstraňování přátelství musíte $pull ze seznamu přátel obou uživatelů, ale frekvence by byla mnohem menší. Při získávání seznamu přátel, který by se často používal, se ale ptáte méně.




  1. Migrace MongoDB na DynamoDB, část 2

  2. Použití map/reduce pro mapování vlastností v kolekci

  3. Porovnání vzorů nasazení pro MongoDB

  4. Jak nakonfigurovat celer-redis v projektu django na microsoft azure?