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

MongoDB मानचित्र/सरणी एकत्रीकरण प्रश्न को कम करें

  1. "चंकिंग" आपके कोड से आता है:आपके कम फ़ंक्शन के मान पैरामीटर में {time:<timestamp>,value:<value>} या तो हो सकता है आपके मानचित्र फ़ंक्शन से उत्सर्जित, या {time:[<timestamps>],value:[<values]} पिछली कॉल से आपके कम करने के कार्य में वापस आ गया।

  2. मुझे नहीं पता कि यह व्यवहार में होगा या नहीं, लेकिन यह सैद्धांतिक रूप से हो सकता है।

  3. बस आपका नक्शा फ़ंक्शन उसी तरह की वस्तुओं का उत्सर्जन करता है जो आपका कम फ़ंक्शन देता है, यानी emit(<id>, {time: [ts], value: [P[1]]}) , और तदनुसार अपना कम करें फ़ंक्शन बदलें, यानी Array.push.apply(result.time, V.time) और इसी तरह result.value . के लिए ।

    खैर, मैं वास्तव में समझ नहीं पा रहा हूं कि आप सरणी की एक जोड़ी के बजाय समय/मूल्य जोड़े की सरणी का उपयोग क्यों नहीं कर रहे हैं, यानी emit(<id>, { pairs: [ {time: ts, value: P[1] ] }) या emit(<id>, { pairs: [ [ts, P[1]] ] }) मैप फ़ंक्शन में, और Array.push.apply(result.pairs, V.pairs) कम करने के कार्य में। इस तरह, आपको अंतिम रूप देने के कार्य की भी आवश्यकता नहीं होगी (सिवाय इसके कि जोड़े से सरणी को "खोलें" संपत्ति:क्योंकि कम फ़ंक्शन एक सरणी वापस नहीं कर सकता है, आपको इसे किसी ऑब्जेक्ट में इस तरह लपेटना होगा)




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. एक .js फ़ाइल को mongo db.eval () में पास करें

  2. मूल फ़ील्ड निर्दिष्ट किए बिना नेस्टेड फ़ील्ड को सीधे क्वेरी कैसे करें?

  3. नेवला Model.find एक समारोह नहीं है?

  4. गोलांग-एमजीओ में $शाब्दिक उपयोग

  5. जावास्क्रिप्ट से मोंगोडब में आंतरिक क्वेरी कैसे पास करें?