MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Lưu trữ các mối quan hệ bạn bè trong MongoDB?

Giữ danh sách friend_ids trong một người dùng, là những gì tôi sẽ giới thiệu. Vài lý do,

1. Bạn truy vấn người dùng và bạn có sẵn danh sách tất cả bạn bè.

2.Các yêu cầu (đang chờ xử lý, được chấp nhận) cũng có thể được xử lý, bằng cách thấy rằng một id tương ứng phải có trong cả danh sách bạn bè của người dùng. Vì vậy, tôi có thể nhận được danh sách những người bạn thực tế và được chấp nhận bằng cách truy vấn

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

Có, trong khi xóa bỏ tình bạn, bạn phải $pull từ danh sách bạn bè của cả hai người dùng, nhưng tần suất xuất hiện sẽ ít hơn nhiều. Nhưng bạn ít truy vấn hơn trong việc lấy danh sách bạn bè, danh sách bạn bè sẽ được sử dụng thường xuyên.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bất kỳ lý do chi tiết và cụ thể nào cho việc Tại sao MongoDB nhanh hơn nhiều so với SQL DBs?

  2. Spring Boot kết nối Mysql và MongoDb

  3. Truy vấn tổng hợp trung bình Mongo không có nhóm

  4. mongodb phiên bản 3.0.0 client robomongo mongovue

  5. MongoDB Không tìm thấy thư mục dữ liệu / data / db