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

Làm cách nào để xóa các bản sao trong MongoDb?

MongoDB có thể làm điều này để tự vệ. Nếu bạn dropDups trên trường không chính xác, bạn có thể tập hợp toàn bộ tập dữ liệu và khóa DB bằng các thao tác xóa (thao tác này "đắt" như khi viết).

Vì vậy, câu hỏi đầu tiên là tại sao bạn lại tạo một chỉ mục duy nhất trên id lĩnh vực?

MongoDB tạo một _id mặc định trường tự động là duy nhất được lập chỉ mục. Theo mặc định, MongoDB điền _id với một ObjectId tuy nhiên, bạn có thể ghi đè giá trị này bằng bất kỳ giá trị nào bạn thích. Vì vậy, nếu bạn có một bộ giá trị ID sẵn sàng, bạn có thể sử dụng những giá trị đó .

Nếu bạn không thể nhập lại các giá trị, hãy sao chép chúng vào một bộ sưu tập mới trong khi thay đổi id thành _id . Sau đó, bạn có thể bỏ bộ sưu tập cũ và đổi tên bộ sưu tập mới. ( lưu ý rằng bạn sẽ nhận được một loạt "lỗi khóa trùng lặp", hãy đảm bảo rằng mã của bạn nắm bắt và bỏ qua chúng )



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Buộc mongodb xuất ra JSON nghiêm ngặt

  2. Nhiều điều kiện giới hạn trong mongodb

  3. Cách thực hiện nhóm mongo trên máy chủ Meteor

  4. Chuyển đổi các điều kiện truy vấn JSON thành các hoạt động MongoDB / Mongoose

  5. Cập nhật từ điển trong Mongodb