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

Truy vấn trên MongoDB Xóa kích hoạt

Bạn phải tìm nạp tài liệu đó bằng ObjectID của nó, điều này sẽ không thể thực hiện được trên nút hiện tại mà bạn đang theo dõi oplog từ vì vào thời điểm bạn nhận được thao tác xóa khỏi oplog , tài liệu đã biến mất. Tôi tin rằng bạn có hai lựa chọn:

  1. Đảm bảo rằng tất cả các thao tác xóa đều được thực hiện trước thao tác cập nhật, cho phép bạn xem các trường tài liệu mà bạn yêu cầu trước khi xóa (điều này tất nhiên sẽ làm cho việc xóa đắt hơn)
  2. Chạy chương trình phụ với độ trễ nô lệ và sau đó truy vấn nút đó để tìm tài liệu đã bị xóa (trực tiếp hoặc bằng cách sử dụng thẻ ).

Đối với số 2, sự cố đang có độ trễ đủ lâu để đảm bảo rằng bạn có thể tìm nạp tài liệu và đủ ngắn để đảm bảo rằng bạn đang nhận được phiên bản cập nhật của tài liệu. Trừ khi bạn thêm lập phiên bản vào tài liệu dưới dạng kiểm tra (sau đó tương tự như tùy chọn 1, bạn có thể muốn cập nhật phiên bản trước khi xóa), đây về cơ bản phải là một giải pháp lạc quan, tốt nhất.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB:Khớp nhiều phần tử mảng

  2. Kết nối Go và MongoDB sẽ không hoạt động với nhật ký hoảng loạn không có máy chủ truy cập được

  3. Sử dụng ReplicaSetConnection của pymongo:đôi khi nhận được IndexError:không có mục nào như vậy cho Cursor

  4. Nhóm các bản ghi theo tháng và đếm chúng - Mongoose, nodeJs, mongoDb

  5. mongodb không thể (?) E11000 khóa trùng lặp lỗi khóa khi uperting