MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

कुल और $group क्वेरीज़ का उपयोग करते समय मेमोरी ओवरफ़्लो त्रुटि

कुछ विचार:

आपको पहले $project की आवश्यकता नहीं है क्वेरी में चरण। और, आप { "$toDate": "$originaltimestamp" } शामिल कर सकते हैं $group . के भीतर मंच का _id , नीचे के रूप में:

"_id": { 
    "$dateToString": { 
        "format": "%Y-%m-%d", "date": { "$toDate": "$originaltimestamp" } 
    } 
}

$push: "$$ROOT" - $$ROOT . के बजाय , केवल उन क्षेत्रों को कैप्चर करें जिनकी आपको सबसे अधिक (या महत्वपूर्ण) आवश्यकता है। यह स्मृति उपयोग को कम करने के लिए है। उदाहरण के लिए:

"data": { 
    $push: { 
        "subscriber_id": "$subscriber_id",
        "type": "$type",
        // other required fields...
    } 
}

अंत में, आप समय पर तिथियों के एक सेट के लिए क्वेरी को प्रतिबंधित करने के बारे में सोच सकते हैं। इसके लिए विभिन्न प्रकार की तिथियों के लिए एक से अधिक बार क्वेरी चलाने की आवश्यकता होगी - लेकिन मुझे लगता है कि यह समग्र रूप से बेहतर हो सकता है। उदाहरण के लिए, month . से मेल खाने वाला एक महीना खेत। और, यह month प्रदर्शन के लिए अनुक्रमित किया जा सकता है। इसके लिए एक $match . शामिल करना होगा उदाहरण के लिए क्वेरी की शुरुआत (प्रथम चरण) में चरण:

{ $match: { month: "202001" } }

और, यह जनवरी 2020 के महीने के डेटा को क्वेरी करेगा।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. OnBeforeUnload ईवेंट का उपयोग करके ब्राउज़र रीफ़्रेश करें

  2. मैं मोंगोडब पर केस-असंवेदनशील प्रश्न कैसे बना सकता हूं?

  3. नोएसक्यूएल दस्तावेज़ स्टोर डीबी के साथ जाने के लिए कुछ वास्तविक उपयोग के मामले क्या हैं?

  4. स्पंदन को MongoDB के साथ कैसे कनेक्ट करें

  5. पोस्टग्रेज JSON सरणियों के अंदर क्वेरी करना