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

Robomongo :Melebihi batas memori untuk $group

{ allowDiskUse: true } 

Harus ditempatkan tepat setelah alur agregasi.

Dalam kode Anda, ini akan menjadi seperti ini:

db.getCollection('RAW_COLLECTION').aggregate([
  // Group on unique value storing _id values to array and count 
  { "$group": {
    "_id": { RegisterNumber: "$RegisterNumber", Region: "$Region" },
    "ids": { "$push": "$_id" },
    "count": { "$sum": 1 }      
  }},
  // Only return things that matched more than once. i.e a duplicate
  { "$match": { "count": { "$gt": 1 } } }
], { allowDiskUse: true } )

Catatan:Menggunakan { allowDiskUse: true } dapat menimbulkan masalah yang terkait dengan kinerja karena pipa agregasi akan mengakses data dari file sementara di disk. Juga tergantung pada kinerja disk dan ukuran set kerja Anda. Uji kinerja untuk kasus penggunaan Anda



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongodb bagaimana cara memasukkan HANYA jika tidak ada (tidak ada pembaruan jika ada)?

  2. menangani @ dalam string koneksi mongodb

  3. Node.js + MongoDB:masukkan satu dan kembalikan dokumen yang baru dimasukkan

  4. Cara mengkonfigurasi MongoMapper dan ActiveRecord di Proyek Ruby Rails yang sama

  5. Mengapa MongoDB Begitu Cepat?