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

Rentang dukungan dari waktu ke waktu analitik yang disusun

Mari kita bahas pertanyaan Anda satu per satu:

Melihat metrik kinerja hanya dari satu eksekusi benar-benar bukan cara kerjanya. Anda harus mengambil rata-rata dari beberapa eksekusi sebelum menyimpulkan karena ada beberapa faktor yang berperan. Karena itu, MongoDB menyimpan dokumen yang paling sering digunakan dalam memori dan menyimpannya di sana kecuali jika harus menghasilkan memori untuk beberapa dokumen lain. Jadi, jika kueri mengakses dokumen yang sudah di-cache dari kueri sebelumnya, itu akan lebih cepat.

Juga dalam agregasi MongoDB menggunakan indeks hanya di awal jika ada. Misalnya $match dan $sort fase dapat menggunakan indeks. Dalam kasus Anda $match adalah tahap pipa pertama jadi itu adalah kemenangan.

Di MongoDB data disimpan di BSON , jadi tanggal pada dasarnya adalah angka ketika mereka dibandingkan. Jadi tidak ada perbedaan.

Meskipun saya belum mengujinya, saya benar-benar ragu bahwa pendekatan time_bucket akan memberikan respons yang lebih cepat. Sejak created_at akan selalu meningkat, indeks, dalam hal ini, juga akan ditambahkan ke akhir tanpa time_bucket. Selain itu, ukuran indeks akan relatif besar ketika dibuat pada array daripada pada bidang tanggal sederhana. Apakah itu tidak akan menyebabkan masalah pemasangan indeks di RAM.

Menggunakan time_bucket masuk akal ketika Anda menggunakan beberapa fungsi pada bidang tanggal sebelum mencocokkan. Jika Anda mengekstrak hanya tahun dari bidang tanggal sebelum mencocokkan, itu akan membuat indeks yang ada pada tanggal tidak berguna.

Itu selalu lebih baik untuk mentransmisikan parameter Anda agar sesuai dengan tipe data di database daripada sebaliknya.

Iya itu mungkin. Jika $and , Anda cukup menentukan semua filter yang dipisahkan dengan koma di $match fase. Jika $or gunakan $or operator.

Jika Anda memiliki dua $macth fase satu per satu MongoDB menggabungkannya menjadi satu . Jadi, Anda tidak perlu khawatir tentang menambahkan hasil dari beberapa fase pertandingan.

Sekarang Pengoptimalan . Anda Poin

Ya, kueri tercakup jauh lebih cepat.

Jika ukuran dokumen diperkecil dalam $group tahap dengan menggunakan $project , maka ya itu benar.

Ini belum tentu benar tetapi umumnya demikian. Anda dapat memeriksa jawaban ini .




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Kinerja MongoDB:Menjalankan Agregasi MongoDB Pada Sekunder

  2. Luwak:CastError:Cast ke ObjectId gagal untuk nilai [objek Obyek] di jalur _id

  3. Bagaimana cara menangani migrasi skema luwak dengan benar?

  4. Permintaan untuk bidang dalam objek dalam array dengan Mongo?

  5. Tidak dapat menghubungkan Hive dengan MongoDB menggunakan konektor mongo-hadoop