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

tạo tài liệu mongodb với tài liệu con về mặt nguyên tử?

Cập nhật bằng upsert=true có thể được sử dụng để thực hiện "chèn hoặc cập nhật" nguyên tử ( http://docs.mongodb.org/manual/core/update/#update-operations-with-the-upsert-flag ).

Ví dụ:nếu chúng ta muốn đảm bảo một tài liệu trong bộ sưu tập Front có url cụ thể được chèn chính xác một lần, chúng tôi có thể chạy một cái gì đó như:

db.Front.update(
    {url: 'http://example.com'},
    {$set: {
       url: 'http://example.com'},
       found: true
    }
)

Các thao tác trên một tài liệu trong MongoDB luôn là nguyên tử. Nếu bạn thực hiện các bản cập nhật trải dài trên nhiều tài liệu, thì không có tính nguyên tử nào được đảm bảo. Trong những trường hợp như vậy, bạn có thể tự hỏi:tôi có thực sự cần các phép toán để trở thành nguyên tử không? Nếu câu trả lời là không, thì bạn có thể sẽ tìm ra cách làm việc với dữ liệu có khả năng không nhất quán. Nếu câu trả lời là có và bạn muốn gắn bó với MongoDB, hãy xem mẫu thiết kế trên Cam kết hai giai đoạn .




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. nhập tệp CSV MongoDB với ISODate

  2. Cách nhận số lượng nhiều bộ lọc phù hợp trong mongoDB

  3. Mongoose - xác thực cú pháp email

  4. Cách cài đặt MongoDB làm dịch vụ trên Windows 8.1

  5. Spring Data MongoDb có hỗ trợ toán tử tổng hợp mảng bộ lọc không?