MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Bertahan dan siram - Doctrine dan MongoDB

Saya membuat tolok ukur untuk profil flush dari dokumen dua bidang sederhana dalam berbagai ukuran batch: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

Seperti yang Anda duga, sebenarnya memasukkan data ke Mongo hanya menyumbang sebagian kecil dari pengukuran ini. Doctrine akan menghabiskan cukup banyak waktu untuk menelusuri langkah-langkah seperti pengiriman peristiwa dan komputasi changeset, yang terakhir akan sangat dipengaruhi oleh kompleksitas model domain Anda.

Anda dapat melacak semua operasi khusus Doktrin di flush() dengan melihat UnitOfWork::komit() .




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bagaimana saya bisa terhubung dengan X509 dengan meletakkan semua opsi di string koneksi di driver node.js untuk mongodb?

  2. Kueri dinamis di MongoDB dan Node.js

  3. MongoDB $project:Pertahankan bidang pipa sebelumnya

  4. Temukan semua dokumen di mana bidang tidak ada, ditambah jika bidang ada, terapkan ketentuan

  5. Metode PyMongo dan toArray()