2012-01-22 24 views
157

मुझे कुछ बुनियादी समझ है कि Amazon SimpleDB है, लेकिन Amazon DynamoDB विवरण के अनुसार यह लगभग समान है: NoSQL Key-value store सेवा।अमेज़ॅन SimpleDB बनाम अमेज़ॅन DynamoDB

कोई बस उन दोनों के बीच मुख्य अंतर समझाने और जिसमें मामलों अन्य से अधिक एक को चुनना बता सकते हैं।

उत्तर

146

इस पैरा के अंत में सबसे कॉम्पैक्ट सारांश के साथ संबंधित पूछे जाने वाले प्रश्न Q: How does Amazon DynamoDB differ from Amazon SimpleDB? Which should I use? से संबोधित किया जाता है (हैश लिंक अब काम करता है, लेकिन इन-पेज का उपयोग पृष्ठ के भीतर सवाल ढूंढने के लिए) पहले से ही कुछ हद तक,:

जबकि सरल डीबी की स्केलिंग सीमाएं हैं, यह छोटे वर्कलोड के लिए एक अच्छा फिट हो सकता है जिसके लिए क्वेरी लचीलापन की आवश्यकता होती है। अमेज़ॅन SimpleDB स्वचालित रूप से सभी आइटम विशेषताओं को अनुक्रमणित करता है और इस प्रकार प्रदर्शन और स्केल की लागत पर क्वेरी लचीलापन का समर्थन करता है।

तो यह प्रदर्शन/scalability और सादगी/लचीलापन के बीच एक व्यापार है, सरल परिदृश्यों यह अभी भी किया जा आसान SimpleDB के साथ शुरू हो रही है हो सकता है (DynamoDB के लिए आपके आवेदन architecturing एक अलग दृष्टिकोण के लिए नीचे देखें की जटिलताओं से बचने के लिए के लिए अर्थात)।

जुड़ा हुआ सामान्य प्रश्न प्रविष्टि वर्नर वोगेल के Amazon DynamoDB – a Fast and Scalable NoSQL Database Service Designed for Internet Scale Applications रूप में अच्छी तरह का संदर्भ है, जो वास्तव में एक विस्तृत और इस प्रकार अत्यधिक की सिफारिश की सामान्य और विशेष रूप से डायनमो में अमेज़न पर NoSQL के इतिहास के विषय में पढ़ा है, इसमें आपके प्रश्न को संबोधित करने वाली कई और अंतर्दृष्टि भी शामिल हैं, उदा।

यह स्पष्ट हो गया कि डेवलपर्स [भी अमेज़न इंजीनियरों] दृढ़ता से प्राथमिकता दी सादगी के कुशल नियंत्रण के रूप में वे मतदान "अपने पैरों के साथ" और अपनाया क्लाउड-आधारित एडब्ल्यूएस समाधान, अमेज़न S3 और अमेज़न SimpleDB की तरह , डायनेमो से अधिक। [इसके अलावा मेरा]

जाहिर DynamoDB इसके समाधान के लिए शुरू किया गया है और इस तरह के बजाय सिर्फ 'अपने मौजूदा NoSQL भेंट में संशोधन SimpleDB के उत्तराधिकारी के रूप में योग्य हो सकता है:

हम निष्कर्ष निकाला है कि एक आदर्श समाधान के मूल भाग डायनामो डिज़ाइन (वृद्धिशील स्केलेबिलिटी, अनुमानित उच्च प्रदर्शन) के सबसे अच्छे हिस्सों को सरल डीबी के सर्वोत्तम हिस्सों के साथ जोड़ देगा (क्लाउड सेवा, स्थिरता, और तालिका-आधारित डेटा मॉडल के प्रशासन की आसानीएक शुद्ध कुंजी-मूल्य स्टोर सेअमीर)।

वर्नर के सारांश पता चलता है DynamoDB अब तदनुसार किसी भी आकार के अनुप्रयोगों के लिए एक अच्छा फिट होने के लिए:

अमेज़न DynamoDB जाहिर उच्च प्रदर्शन को बनाए रखने और डिज़ाइन किया गया है अत्यधिक की वर्कलोड के लिए कुशल लागत किसी भी पैमाने पर, से सबसे बड़े इंटरनेट-स्तरीय अनुप्रयोगों के लिए सबसे छोटा।

20

सरल डीबी या डायनेमो डीबी का उपयोग करें, यह आपके उपयोग के मामले पर निर्भर करता है, मैंने SimpleDB in some cases instead of DynamoDB का उपयोग करके अपने कुछ अनुभव साझा किए। दूसरे उत्पाद में, मैंने अलग-अलग डेटा स्टोर करने के लिए सरल डीबी और डायनेमो डीबी दोनों का उपयोग किया।

+13

पोस्ट को पसंद किया - इसे यहाँ –

+0

संक्षेप में प्रस्तुत रूप में अच्छी तरह पोस्ट को पसंद करने के लिए चोट नहीं होगा। @ मेसन, एडब्ल्यूएस उत्पाद कंसोल से सरल डीसीबी धीरे-धीरे गायब हो जाने पर आपके विचार क्या हैं? क्या आप अभी भी SimpleDB का उपयोग कर रहे हैं या आपने माइग्रेट किया है? –

+1

@ डेविड रॉबिन सरल डीबी को एडब्ल्यूएस द्वारा बहिष्कृत किया गया हो सकता है, लेकिन यह अभी भी वहां है और मेरे डेटा मोडल को पूरी तरह से फिट करता है। मैंने अभी तक अपना कोड माइग्रेट नहीं किया है, और ऐसा करने की योजना नहीं है। लेकिन नए उत्पादों के लिए, मैं डायनेमोड या माइस्क्ल जैसे अन्य डेटाबेस चुनता हूं। –

4

इंडेक्सिंग में होने वाले अंतरों में से एक (जैसा कि ऊपर दिए गए उनके लेख में @ मेसन झांग राज्यों में से एक है)। डायनामो डीबी आपको टेबल बनाने के समय इंडेक्स बनाने के लिए सीमित करता था। हालांकि, अब (2014 की शुरुआत से), वैश्विक माध्यमिक सूचकांक (जीएसआई) की अवधारणा है। जीएसआई किसी भी समय टेबल पर बनाया जा सकता है। 5 तक समर्थित हैं। तो, कई उपयोग मामलों के लिए अनुक्रमण अब अवरुद्ध मुद्दा नहीं है।

आपको यह भी पता होना चाहिए कि SimpleDB के आकार और प्रदर्शन सीमाएं हैं। (10 जीबी और कहें, 25 अनुरोध/सेक)

शायद अंत में, डायनेमो डीबी सरल डीबी को सबसे सरल उपयोग मामलों में बदल देगा।

0

सरल शब्दों में दोनों डेटा स्टोर NoSql हैं।

अंतर स्केलेबिलिटी (और कुछ अन्य पहलुओं पर आधारित है, लेकिन स्केलिंग मेरी राय में सबसे बड़ा मूल्य रखता है)। सरल डीबी मोंगोडीबी के समान है लेकिन स्केलिंग की बात आने पर limitations का गुच्छा है।

लेकिन डायनेमोडीबी आपको छोटे प्रावधान की सुविधा देता है, और आपको आवश्यक प्रोविजन थ्रूपुट को स्केल करता है। और इसकी आवश्यकता होने पर स्केल डाउन करें। (यानी। पदोन्नति के दौरान, सेलिब्रिटी रेफ़रल साइनअप इत्यादि जैसे परिदृश्यों में हार्डवेयर आवश्यकताओं का समय-आधारित स्पाइक होगा)

2

सरल डीबी को इन दिनों अमेज़ॅन से कोई प्यार नहीं दिख रहा है - यह भी मुश्किल है कि यह कहां से मुश्किल है एडब्ल्यूएस कंसोल में इसे प्रावधान करें। Seems like SimpleDB is no longer being iterated on - AWS पर दस्तावेज़ डेटाबेस के लिए अपनी पहली पसंद के रूप में DynamoDB का उपयोग करें।

SimpleDb अब वास्तव में "पुनरावृत्त" नहीं है। इसका मतलब है कि भविष्य में साइडबैब के लिए नया विकास नहीं है। यह "बनाए रखा गया है और समर्थित" है, लेकिन यह कोई बेहतर नहीं होगा।

+0

पढ़ने के बाद डायनेमोड से SImpleDB पर स्विच करूँगा सही पर सुधार नहीं कर सकता! – dividebyzero

0

मैं सरल डीबी में प्रमुख अंतर यह मानना ​​है कि बनाम डायनमो डीबी

  1. विलंबता के मामले में उम्मीद के मुताबिक प्रदर्शन कर रहे हैं और विलंबता और throughput समझौता किए बिना उच्च मात्रा संभालने में सक्षम हो। DynamoDB विभाजन कुंजी
  2. पढ़ें का उपयोग करके इस को प्राप्त होता है, अनुकूलन अनुकूलित किया जा सकता है जो
  3. बेहतर अंतिम स्थिरता मॉडल लिखने क्योंकि लगातार हैशिंग एल्गोरिथ्म के उपयोग
0

3 मुख्य अंतर:

  1. इंडेक्सिंग

    • सरल डीबी तालिका में "हर" फ़ील्ड के लिए अनुक्रमणिका बनाता है।
    • डायनेमो डीबी आपको डेटाबेस बनाने से पहले अनुक्रमण फ़ील्ड सेट करना होगा, और संशोधित नहीं किया जा सकता है।
  2. मूल्य निर्धारण:

    • SimpleDB मूल्य निर्धारण मशीन घंटे पर आधारित है और भंडारण क्षमता
    • DynamoDB पढ़ें की क्षमता से पैसा चार्ज/सेकंड प्रति रिकॉर्ड लिखता है।
  3. अनुमापकता:

    • SimpleDB मैनुअल विभाजन अगर डेटा भंडारण 10GB से अधिक की आवश्यकता है।
    • डायनेमो डीबी स्वचालित रूप से हुड के नीचे डेटा वितरित करता है, इस प्रकार बहुत अधिक स्केलेबिलिटी प्रदान करता है।
संबंधित मुद्दे