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

Cách tốt nhất để đọc và cập nhật tài liệu mongodb bằng pymongo

Bạn muốn có "API Hoạt động Hàng loạt" từ MongoDB. Hầu hết được giới thiệu với MongoDB 2.6, vì vậy lý do thuyết phục để nâng cấp nếu bạn hiện chưa nâng cấp.

bulk = db.coll.initialize_ordered_bulk_op()
counter = 0

for record in coll.find(snapshot=True):
    # now process in bulk
    # calc value first
    bulk.find({ '_id': record['_id'] }).update({ '$set': { 'field': newValue } })
    counter += 1

    if counter % 1000 == 0:
        bulk.execute()
        bulk = db.coll.initialize_ordered_bulk_op()

if counter % 1000 != 0:
    bulk.execute()

Tốt hơn nhiều vì bạn không phải gửi "mọi" yêu cầu đến máy chủ, chỉ một lần trong mỗi 1000 yêu cầu. "Bulk API" thực sự sắp xếp điều này cho bạn phần nào, nhưng thực sự bạn muốn "quản lý" điều này tốt hơn một chút và không tiêu tốn quá nhiều bộ nhớ trong ứng dụng của mình.

Con đường của tương lai. Sử dụng nó.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB tổng hợp các đường ống với đối tượng được liên kết

  2. ý nghĩa của sudo chown -R `id -u` / data / db

  3. NestJS:Cách triển khai xác thực người dùng dựa trên phiên

  4. Mongo, tìm qua danh sách id

  5. Tạo bộ sưu tập Meteor mới một cách nhanh chóng