2012-02-09 14 views
5

में मुख्य विशेषता पर SCAN मुझे मुख्य विशेषता पर एक IN क्वेरी निष्पादित करने की आवश्यकता है। चूंकि, क्वेरी स्थिति में प्रदान नहीं करती है, इसलिए मैं स्कैन का उपयोग करने की योजना बना रहा हूं। मुख्य विशेषता पर एससीएएन पूरी तालिका को स्कैन करेगा?DynamoDB

+0

अप्रैल 2014 तक, आप https://aws.amazon.com/blogs/aws/improved-queries-and-updates-for-dynamodb/ – emilyk

उत्तर

5

क्या मुख्य विशेषता पर एससीएएन पूरी तालिका को स्कैन करेगा?

हाँ, देख Query and Scan in Amazon DynamoDB:

स्कैन

एक स्कैन आपरेशन पूरे तालिका स्कैन करता है। पूर्ण स्कैन के बाद, आप पर फ़िल्टर निर्दिष्ट कर सकते हैं, जो आपको वापस लौटाए गए मानों को परिष्कृत करने के परिणामों पर लागू होते हैं। अमेज़ॅन डायनेमो डीबी स्कैन पर 1 एमबी सीमा रखता है (परिणाम परिणाम फ़िल्टर होने से पहले लागू होते हैं)। स्कैन के परिणामस्वरूप फ़िल्टर मानदंड फ़िल्टर मानदंडों का परिणाम हो सकता है।

विशेष रूप से, कुंजी और गैर प्रमुख के बीच कोई अंतर विशेषताओं जहाँ तक Scan API का संबंध है, है यानी आप बस नाम से वांछित गुण प्रदान करते हैं, उनमें से भले ही साथ ही एक विशेषता का गठन Primary Key रूप में इस्तेमाल किया जा रहा है या नहीं:

AttributesToGet गुण नामों में से

सरणी। यदि विशेषता नाम निर्दिष्ट नहीं हैं तो सभी विशेषताओं को वापस कर दिया जाएगा। यदि कुछ विशेषताएं नहीं मिली हैं, वे परिणाम में प्रकट नहीं होंगे।

+1

बहुत खराब प्रश्नों में IN का उपयोग कर सकते हैं। दस लाख रिकॉर्डसेट पर 100 मिलान रिकॉर्ड के लिए स्कैन और क्वेरी के बीच लागत अंतर क्या होगा? –

+0

@Mani: सबसे अधिक संभावना विशाल: _SCAN_ को इस तरह से उपयोग करने के लिए डिज़ाइन नहीं किया गया है और विशाल रिकॉर्डसेट के लिए लागत/प्रदर्शन पर महत्वपूर्ण प्रभाव पड़ता है, अगर इसका विशेष रूप से लेखांकन किए बिना उपयोग किया जाता है - गणना करना इसके विपरीत ही जटिल है, कृपया पढ़ें क्रिस मोयर के पहले ब्लॉग पोस्ट के माध्यम से [अमेज़ॅन डायनेमो डीबी] (http://blog.coredumped.org/2012/01/amazon-dynamodb.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+ChrisMoyer+%28Chris+Moyer%29) एक विश्लेषण के लिए, आकस्मिक रूप से एक लाख रिकॉर्डसेट के लिए एक नमूना, और इस समस्या के बदले में कैसे खाते हैं इस पर विचार। –

1

batchGetItem आपके लिए काम नहीं करेगा?

+0

वास्तव में, इकाई की एक कुंजी और एक श्रेणी विशेषता है। तो यह मुख्य गुणों पर एक आईएन और बीच की स्थिति है। बीटीडब्ल्यू, आप pojo कक्षाओं के साथ बैचेटिटिम का उपयोग कैसे करते हैं? –

+0

@ManiDoraisamy ने बढ़ी हुई आवश्यकता को दिया है, मैं इन सूची में प्रति हैश कुंजी मान के लिए एक प्रश्न जारी करने का सुझाव दूंगा। एक छोटा ऐप लिखें जो उन क्वेरी परिणामों में शामिल हो और अमेज़ॅन के ईसी 2 में चलता है और आपको विलंबता में वृद्धि को कम करना चाहिए। वैकल्पिक रूप से आप इस बाद का कार्य अमेज़ॅन के ईएमआर को दे सकते हैं क्योंकि _Amazon DynamoDB अमेज़ॅन लोचदार MapReduce_ के साथ भी एकीकृत करता है। – Mikha

+0

@ManiDoraisamy आपके दूसरे प्रश्न के उत्तर में उत्तर नहीं है। 'बैचगेटइटेम रिवेस्ट' 100 की कुंजी की सूची में नीचे आ गया है। 'कुंजी' में तालिका में रिकॉर्ड की पहचान करने के लिए हैश कुंजी और रेंज कुंजी दोनों के लिए 'विशेषता Value' है। बीटीडब्ल्यू, एक रिकॉर्ड अनिवार्य रूप से एक 'मानचित्र' है और आपकी ज़िम्मेदारी उन लोगों में से और बाहर परिवर्तित करना आपकी ज़िम्मेदारी है। – Mikha

संबंधित मुद्दे