Có một số cách:
1- Giả sử bạn đang cố gắng cung cấp id duy nhất cho mỗi bài đăng trên blog. Tại sao không ghi đè trường '_id' của tài liệu trong bộ sưu tập blog? tài liệu mẫu sẽ là:
{ "_id" : 122 , "content" : { "title: ..... }
Bạn sẽ phải tìm cho ra một phương pháp để tạo ra một id autoincrement tuy nhiên, đó là khá dễ dàng. Tuy nhiên, loại khóa chính này không được khuyến nghị. http://www.mongodb.org/display/DOCS/How+to+Make+an+Auto+Incrementing+Field
2- Hãy lĩnh vực _id vẫn như nó có, và additionaly lưu trữ một chìa khóa 'blogid' đó là một số nguyên, bạn sẽ phải chạy ensureIndex
vào 'lĩnh vực blogid` mặc dù để làm cho truy cập bởi blogid nhanh. Lưu trữ trên không sẽ nhỏ, vì bạn sẽ lưu trữ một keyname và một số nguyên trong tài liệu của bạn.
tài liệu mẫu sẽ là:
{ "_id" : xxxxxxxxxx ,"blogid" : 122, "content" : { "title: ..... }
Liệu các phương pháp váy blogid quanh scalabilit y vấn đề hoặc tôi vẫn sẽ gặp phải các vấn đề tương tự như trong phương pháp 1? – deltanovember
@deltanovember phương pháp blogid hoạt động tốt. Chi phí duy nhất là bộ nhớ bổ sung cho dữ liệu và chỉ mục trên khóa blogid. Cũng sẽ đề nghị đặt tên trường này càng nhỏ càng tốt, vì nó chiếm không gian cho mỗi tài liệu, 'đấu giá' sẽ làm tốt. – DhruvPathak