Dari dokter , katanya
"Untuk kinerja terbaik, sebagian besar perangkat aktif Anda harus sesuai dengan RAM."
Jadi misalnya, db.stats()
beri saya
{
"db" : "mydb",
"collections" : 16,
"objects" : 21452,
"avgObjSize" : 768.0516501957859,
"dataSize" : 16476244,
"storageSize" : 25385984,
"numExtents" : 43,
"indexes" : 70,
"indexSize" : 15450112,
"fileSize" : 469762048,
"ok" : 1
}
Nilai yang mana working set size
?
Jawaban:
The Pertanyaan SO / jawaban terkait dengan quanta di komentar benar, "Working set" pada dasarnya adalah jumlah data dan indeks yang akan aktif / digunakan oleh sistem anda.
Anda tidak dapat mengetahui dari
db.stats()
apa jadinya nanti kecuali Anda berpikir bahwa Anda perlu memiliki seluruh rangkaian data dan seluruh indeks dalam RAM. Artinya, Anda bisa bekerja di luar set kerja maksimum untuk database itu, tetapi tidak set kerja aktif yang sebenarnya. Maksimum adalah jumlah dari:Dalam kasus Anda, maksimum itu akan menjadi sekitar 30,45 MiB mengingat output yang Anda tempel.
Untuk melacak penggunaan memori aktual, saya akan merekomendasikan kombinasi angka-angka dari
db.stats()
dan grafik memori (khususnya memori penduduk) yang tersedia di alat pemantauan gratis - MMS .Pembaruan (04/08/2013):
Versi 2.4 menambahkan Pengukur Ukuran Set Kerja ke perintah serverStatus - ini hanya perkiraan, tetapi dapat digunakan sebagai panduan dan untuk memeriksa apakah angka dan estimasi lainnya di atas masuk akal untuk Anda misalnya MongoDB.
Pembaruan (September 2016):
Tiga tahun setelah jawaban asli saya dan banyak hal yang jauh lebih rumit - umumnya mendapatkan ukuran data Anda dan indeks Anda masih merupakan titik awal yang baik. Tapi, mencari tahu hal-hal di MongoDB sekarang akan tergantung pada mesin penyimpanan apa yang Anda gunakan. Selain itu, Versi 3.0 menghapus estimator Perangkat Kerja yang ditautkan di atas untuk MMAP sebagai bagian dari pekerjaan penguncian tingkat koleksi (lihat SERVER-13783 ). Sekarang ada (misalnya) statistik cache untuk
WiredTiger
mesin sebagai pengganti dengan asumsi Anda telah melakukan lompatan ke mesin baru. SebabMMAP
, rekomendasi umum adalah melihat metrik kesalahan halaman sebagai proksi apakah data Anda sesuai dengan memori atau tidak.sumber
MMS
sudah menggunakan , tetapi saya tidak yakin angka apa yang harus dilihat.