DynamoDB CRUD ऑपरेशन और Query बनाम Scan
AWS में Data Stores का उपयोग
Dunieski Otano
AWS Solutions Architect
महँगी गलती
डेवलपर ने एक यूज़र खोजने के लिए Scan चलाया
पूरी 1 million आइटम टेबल पढ़ ली
बिल: $500 एक ही लुकअप के लिए
Query से सिर्फ $0.01 लगता
DynamoDB में CRUD ऑपरेशन
PutItem
: आइटम बनाएँ या बदलें
GetItem
: प्राइमरी की से आइटम पढ़ें
UpdateItem
: चुने हुए एट्रिब्यूट बदलें
DeleteItem
: आइटम हटाएँ
Query
: पार्टिशन की से आइटम लाएँ (efficient)
Scan
: पूरी टेबल पढ़ें (expensive)
Query बनाम Scan: अहम फ़र्क
Query
: पार्टिशन की चाहिए, खास आइटम पढ़ता है
तेज, कुशल, कम लागत
Scan
: पूरी टेबल पढ़ता है, बाद में फ़िल्टर करता है
धीमा, महँगा, संभव हो तो टालें
नियम: की पता है तो Query करें। नहीं तो डिज़ाइन फिर सोचें।
कंडीशनल एक्सप्रेशन से race conditions रोकना
समस्या: दो यूज़र एक साथ वही आइटम अपडेट करें
समाधान: कंडीशनल एक्सप्रेशन
उदाहरण: तभी अपडेट करें जब मौजूदा मान अपेक्षित से मेल खाए
UpdateItem expressions: एट्रिब्यूट बदलना
SET
: एट्रिब्यूट मान सेट करें या नया एट्रिब्यूट बनाएँ
ADD
: नंबर बढ़ाएँ/घटाएँ, सेट में जोड़ें
REMOVE
: आइटम से एट्रिब्यूट हटाएँ
DELETE
: सेट से एलिमेंट हटाएँ
Query और Scan में pagination
समस्या
: बड़े रिजल्ट सेट 1MB सीमा पार करते हैं
समाधान
: LastEvaluatedKey के साथ pagination
Limit
: प्रति पेज आइटम नियंत्रित करें
जारी रखें जब तक LastEvaluatedKey null हो जाए
अभ्यास करते हैं!
AWS में Data Stores का उपयोग
Preparing Video For Download...