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

Persist and flush - Doctrine và MongoDB

Tôi đã tạo điểm chuẩn cho các lần gửi hồ sơ của một tài liệu hai trường đơn giản với nhiều kích thước lô khác nhau: https:// gist. github.com/2725976

$ php src/benchmark.php 10 100 1000 10000 20000 50000 100000
Flushing     10 items took  0.014058 seconds and   2097152 bytes
Flushing    100 items took  0.024325 seconds and    524288 bytes
Flushing   1000 items took  0.196992 seconds and   5505024 bytes
Flushing  10000 items took  2.563700 seconds and  57933824 bytes
Flushing  20000 items took  6.291873 seconds and  89915392 bytes
Flushing  50000 items took 19.118011 seconds and 240386048 bytes
Flushing 100000 items took 58.582809 seconds and 469499904 bytes

Như bạn có thể mong đợi, thực sự việc chèn dữ liệu vào Mongo chỉ chiếm một phần nhỏ trong số các phép đo này. Doctrine sẽ dành khá nhiều thời gian để xem qua các bước như gửi sự kiện và tính toán tập thay đổi, những bước sau sẽ bị ảnh hưởng đáng kể bởi độ phức tạp của mô hình miền của bạn.

Bạn có thể theo dõi tất cả các hoạt động dành riêng cho Doctrine trong flush() bằng cách xem qua UnitOfWork::commit () .




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Làm thế nào để lưu trữ hình ảnh trong phần phụ trợ của nút?

  2. MongoDB tổng hợp với PHP - nhóm theo ngày

  3. triển khai mongodb diff () trong Meteor trên máy chủ?

  4. Làm cách nào để đặt các tùy chọn tuần tự hóa cho các giá trị địa lý bằng cách sử dụng trình điều khiển 10gen C # chính thức?

  5. Dữ liệu mùa xuân:Trường duy nhất trong tài liệu MongoDB