DynamoDB ক্যোয়ারী উদাহরণ

Dynamodb Kyoyari Udaharana



একটি ডাটাবেস হল ডেটার একটি সংগ্রহ — DynamoDB এর ব্যতিক্রম নয়। ডেটাবেসগুলিতে প্রচুর ডেটা থাকে যা পূর্ব-নির্ধারিত প্রক্রিয়া ছাড়া পুনরুদ্ধার করা কঠিন হতে পারে। এখানেই কোয়েরি কমান্ড একটি গুরুত্বপূর্ণ ভূমিকা পালন করে।

যেকোনো ডাটাবেস ম্যানেজমেন্ট সিস্টেমের মতো, DynamoDB বিভিন্ন অনুসন্ধান পদ্ধতি অফার করে যার মাধ্যমে আপনি আপনার ডেটা অ্যাক্সেস এবং ম্যানিপুলেট করার জন্য সিস্টেমের সাথে যোগাযোগ করতে পারেন। DynamoDB-তে কোয়েরি করা একটি অত্যন্ত শক্তিশালী টুল যা আপনাকে একটি আইটেম বা ক্যোয়ারী কমান্ডের সাথে সম্পর্কিত আইটেমগুলির একটি গ্রুপ পুনরুদ্ধার করতে দেয়।

এই নিবন্ধটি DynamoDB ক্যোয়ারী অপারেশনের প্রধান উদাহরণগুলির রূপরেখা দেয়৷







সাধারণ DynamoDB ক্যোয়ারী উদাহরণ

DynamoDB-তে ক্যোয়ারী অপারেশনের জন্য ডিফল্ট আচরণ হল ক্যোয়ারী আইটেমগুলির সাথে যুক্ত সমস্ত আইটেম ফেরত দেওয়া। মজার বিষয় হল, ডায়নামোডিবি-তে ক্যোয়ারী কমান্ডটি টেবিল বা সেকেন্ডারি ইনডেক্সের সাথে ব্যবহারযোগ্য।



যাই হোক না কেন, সর্বদা নিশ্চিত করুন যে আপনি আপনার পার্টিশন কী এর মানের জন্য সমতা শর্ত নির্দিষ্ট করেছেন। আবার, আপনি যদি কমান্ডে একটি ব্যবহার করেন তবে আপনাকে সাজানোর কীটির জন্য একটি ভিন্ন শর্ত প্রদান করতে হতে পারে।



DynamoDB জিজ্ঞাসা করার সময় আপনি যে অন্যান্য পরামিতিগুলির মুখোমুখি হবেন তার মধ্যে KeyConditionExpression এবং FilterExpression অন্তর্ভুক্ত রয়েছে। KeyConditionExpression সেই মূল মানগুলি নির্দিষ্ট করে যা আপনি অনুসন্ধান করতে চান৷ অন্যদিকে, ফিল্টার এক্সপ্রেশন আপনার প্রতিক্রিয়া পাওয়ার আগে প্রশ্নের ফলাফল থেকে আইটেমগুলি সরিয়ে দেয়। আপনি উল্লেখিত এক্সপ্রেশন প্যারামিটারের জন্য স্থানধারক হিসাবে ExpressionAttributeValues ​​ব্যবহার করবেন।





DynamoDB ক্যোয়ারী উদাহরণ অন্তর্ভুক্ত:

প্রাথমিক কীগুলির উপর ভিত্তি করে একটি টেবিল থেকে একটি একক আইটেম সন্ধান করা

আইটেমের পার্টিশন কী এবং বাছাই কী মানগুলির সংমিশ্রণের উপর নির্ভর করে আপনি একটি একক আইটেম খুঁজে পেতে DynmoDB-তে ক্যোয়ারী ইউটিলিটি ব্যবহার করতে পারেন। এই ধরনের অপারেশনের জন্য সিনট্যাক্স নিম্নরূপ:



aws dynamodb প্রশ্ন \

--টেবিল-নাম MyTableName \

--কী-কন্ডিশন-অভিব্যক্তি 'PartitionKey = :pk এবং SortKey = :sk' \

--প্রকাশ-অ্যাট্রিবিউট-মান '{':pk':{'S':'a123b'},':sk':{'S':'def456b'}}'

উপরের ক্যোয়ারী ইউটিলিটিটি MyTableName টেবিল থেকে একটি পার্টিশন কী মান a1234b এবং একটি সাজানোর কী মান odef456b সহ একটি আইটেম পুনরুদ্ধার করার লক্ষ্য রাখে। উদাহরণস্বরূপ, আমরা আমাদের 'অর্ডার' টেবিলে একটি আইটেম খুঁজে পেতে উপরের ইউটিলিটি ব্যবহার করতে পারি। আইটেমটির পার্টিশন কী মান হতে পারে wr546gg Customer_ID প্রতিনিধিত্ব করে, যখন এর বাছাই কী মান হতে পারে 24536433 অর্ডার নম্বর প্রতিনিধিত্ব করে।

ফলাফল নিম্নরূপ হতে পারে:

উপরের ফলাফলটি হলিডে বুকসকে একমাত্র আইটেম হিসাবে ফিরিয়ে আনে যার একটি পার্টিশন কী মান রয়েছে wr546gg এবং একটি সাজানোর কী মান 24536433। এটি আপনাকে আইটেমের সাথে যুক্ত অন্যান্য সমস্ত অতিরিক্ত বৈশিষ্ট্যও নিয়ে আসে। আমাদের দৃষ্টান্তে, এটি চালান নম্বর এবং প্রদত্ত পরিমাণ ফিরিয়ে আনে।

উল্লেখযোগ্যভাবে, নির্দিষ্ট প্রাথমিক কী মানগুলির সাথে মেলে এমন কোনও আইটেম না থাকলে ক্যোয়ারী কমান্ডটি একটি ফাঁকা তালিকা ফিরিয়ে আনবে।

পুনরুদ্ধার করুন একটি DynamoDB টেবিল থেকে সমস্ত আইটেম নির্দিষ্ট বৈশিষ্ট্য মান মেলে

একটি নির্দিষ্ট DynamoDB টেবিলে একই বৈশিষ্ট্যের মান আছে এমন সমস্ত আইটেম পুনরুদ্ধার করতে একটি ফিল্টার এক্সপ্রেশন ব্যবহার করুন।

এই ক্যোয়ারী অপারেশনের জন্য কমান্ডটি নীচে দেখানো হয়েছে।

aws dynamodb প্রশ্ন \

--টেবিল-নাম MyTableName \

--ফিল্টার-অভিব্যক্তি 'OtherAttribute1 = :val' \

--প্রকাশ-অ্যাট্রিবিউট-মান '{':val':{'S':'value1'}}'

উদাহরণ স্বরূপ, আমরা আমাদের মিউজিক টেবিলে 5 মিনিটের বেশি গানের গান পুনরুদ্ধার করতে উপরের ক্যোয়ারী কমান্ডটি ব্যবহার করতে পারি। এটি অর্জন করতে, আমরা আমাদের OtherAttribute1 মান 5.00 এবং MyTableName-এ সেট করব।

ফলাফল নীচে দেখানো হিসাবে হতে পারে:

সংক্ষিপ্ততার জন্য তালিকাটি ছাঁটাই করা প্রয়োজন। কিন্তু ফলাফল থেকে, আমাদের ক্যোয়ারী কমান্ড আমাদের DynamoDB মিউজিক টেবিল থেকে 5.00 এর ফিল্টার এক্সপ্রেশন মান সহ 11 টি আইটেম পুনরুদ্ধার করেছে।

অ্যাট্রিবিউট মানগুলির একটি বিশেষ পরিসর সহ সমস্ত আইটেম পুনরুদ্ধার করা হচ্ছে

একটি নির্দিষ্ট টেবিলের মধ্যে আইটেম পুনরুদ্ধার করার সময় নীচের কমান্ডটি কাজে আসে:

aws dynamodb প্রশ্ন \

--টেবিল-নাম <টেবিল নাম>

--কী-কন্ডিশন-অভিব্যক্তি 'attribute_name এর মধ্যে :val1 এবং :val2' \

--প্রকাশ-অ্যাট্রিবিউট-মান '{':val1':{'N':''},':val2':{'N':''}}'

অবশ্যই, আপনাকে আপনার কাস্টমাইজড শংসাপত্রের সাথে সমস্ত বৈশিষ্ট্য প্রতিস্থাপন করতে হবে যেমন আপনার অন্য যেকোনো কমান্ড লাইনের সাথে করা উচিত। উদাহরণস্বরূপ, আমরা 'বয়স' নামক একটি পরিসর কী বৈশিষ্ট্য সহ আমাদের কর্মচারী টেবিল ব্যবহার করব। আমরা 30 থেকে 42 বছর বয়সী নিয়োগকারীদের পুনরুদ্ধার করার লক্ষ্য রাখব।

আমাদের নতুন কমান্ড লাইন নিম্নরূপ হবে:

aws dynamodb প্রশ্ন \

--টেবিল-নাম ব্যবহারকারীরা

--কী-কন্ডিশন-অভিব্যক্তি 'বয়স :val1 এবং :val2' \

--প্রকাশ-অ্যাট্রিবিউট-মান '{':val1':{'N':'30'},':val2':{'N':'42'}}'

উপরের ইউটিলিটিটি চালানোর ফলে নীচের চিত্রের মতো একটি প্রতিক্রিয়া আসবে;

উপরের চিত্রটি দেখায় যে ক্যোয়ারীটি 6টি আইটেম ফিরিয়ে এনেছে, যা প্রতিটি প্রশ্নের জন্য বৈশিষ্ট্যের মান নির্দেশ করে। ScannedCount হল টেবিলে স্ক্যান করা আইটেমের সংখ্যা যখন CapacityUnits হল অপারেশন চলাকালীন খরচ হওয়া ইউনিটের পরিমাণ।

উপসংহার

যেহেতু DynamoDB একটি NoSQL ডাটাবেস, এর ক্যোয়ারী অপারেশন আপনার সাধারণ AQL ডাটাবেসের মত আচরণ করে না। কিন্তু একবার আপনি করে ফেললে, আপনি খুঁজে পাবেন যে অপারেশনটি বেশ শক্তিশালী এবং ডাটাবেসের সাথে আপনার মিথস্ক্রিয়াকে সহজ করে তুলবে।