Amazon DocumentDB MongoDB-তে ব্যবহৃত Query Language (MQL) এর সাথে একটি উচ্চ স্তরের সামঞ্জস্যতা প্রদান করে। এটি MongoDB ব্যবহারকারীদের জন্য একটি সহজ স্থানান্তর প্রক্রিয়া নিশ্চিত করে, বিশেষ করে যখন তারা তাদের অ্যাপ্লিকেশন AWS পরিবেশে স্থানান্তর করতে চান। তবে, MongoDB-এর কিছু উন্নত বৈশিষ্ট্য DocumentDB-তে সমর্থিত নয়। তাই কিছু পার্থক্য রয়েছে, যদিও অধিকাংশ মৌলিক কার্যক্রম ঠিকভাবে কাজ করে।
MongoDB Query Language (MQL) হল MongoDB ডেটাবেসের জন্য ব্যবহৃত একটি শক্তিশালী কুয়েরি ভাষা, যা ডকুমেন্ট ভিত্তিক ডেটা ম্যানিপুলেশন এবং অনুসন্ধান করার জন্য ব্যবহৃত হয়। এতে কুয়েরি, ইনডেক্সিং, এবং অ্যাগ্রিগেশন যেমন বিভিন্ন অপারেশন সহজেই করা যায়। MQL এর কয়েকটি মূল বৈশিষ্ট্য:
update
, upsert
প্রভৃতি ব্যবহৃত হয়।deleteOne
, deleteMany
অপারেশন ব্যবহৃত হয়।DocumentDB MongoDB-এর মতোই find() এবং query() অপারেশন সমর্থন করে, যা JSON স্টাইলের কুয়েরি ব্যবহার করে ডেটা খুঁজে বের করতে সাহায্য করে। সাধারণ কুয়েরি, যেমন find()
, eq
, gt
, lt
, ne
ইত্যাদি, একে অপরের সাথে সামঞ্জস্যপূর্ণ।
উদাহরণ:
db.users.find({ "age": { "$gt": 18 } })
এই কুয়েরি MongoDB এবং DocumentDB উভয়েই সমর্থন করবে, যেখানে এটি "age" ১৮ এর বেশি এমন ব্যবহারকারীদের অনুসন্ধান করবে।
DocumentDB Aggregation Pipelines সমর্থন করে, যা MongoDB-তে ব্যবহৃত অ্যাগ্রিগেশন অপারেশনগুলি চালানোর জন্য ব্যবহৃত হয়। এটি group
, match
, project
, এবং sort
অপারেশনগুলির জন্য MongoDB-এর মতো সমর্থন প্রদান করে।
উদাহরণ:
db.orders.aggregate([
{ "$match": { "status": "shipped" } },
{ "$group": { "_id": "$customerId", "totalAmount": { "$sum": "$amount" } } }
])
এটি MongoDB এবং DocumentDB উভয় ক্ষেত্রেই কাজ করবে, যেখানে এটি "shipped" স্ট্যাটাসের অর্ডারগুলির জন্য গ্রুপিং এবং সেমিং অপারেশন করে।
DocumentDB MongoDB-এর মতো updateOne() এবং updateMany() অপারেশনগুলি সমর্থন করে, যার মাধ্যমে ডেটা আপডেট করা যায়। তবে, কিছু ক্ষেত্রে upsert সমর্থন নাও থাকতে পারে।
উদাহরণ:
db.users.updateOne(
{ "name": "John" },
{ "$set": { "age": 30 } }
)
এই কুয়েরি MongoDB এবং DocumentDB উভয়েই সমর্থন করে, যেখানে "John" নামের ব্যবহারকারীর বয়স ৩০ তে আপডেট হবে।
DocumentDB MongoDB-এর ইনডেক্সিং অপারেশনগুলির মতোই কাজ করে, যেমন single field indexes, compound indexes, এবং text indexes। তবে কিছু অগ্রাধিকার ফিচার যেমন geospatial indexes MongoDB-তে বিদ্যমান থাকলেও DocumentDB-তে তাদের সমর্থন নেই।
DocumentDB MongoDB-এর কিছু উন্নত বৈশিষ্ট্য যেমন Change Streams, Transactions (একাধিক ডকুমেন্টের জন্য), এবং Full-Text Search সম্পূর্ণভাবে সমর্থন করে না। কিছু ক্ষেত্রে aggregation framework এর নির্দিষ্ট ফিচারগুলি ও কাজ নাও করতে পারে।
DocumentDB MongoDB Query Language (MQL) এর সাথে একটি শক্তিশালী সামঞ্জস্যতা প্রদান করে, তবে কিছু ক্ষেত্রে MongoDB-এর উন্নত ফিচারগুলি (যেমন Change Streams, Full-Text Search, এবং ACID Transactions) DocumentDB-তে সমর্থিত নয়। তবে, মৌলিক কুয়েরি অপারেশন এবং অ্যাগ্রিগেশন অপারেশনগুলি MongoDB-এর মতোই কাজ করে, যা MongoDB ব্যবহারকারীদের জন্য DocumentDB তে স্থানান্তর সহজ করে তোলে।
common.read_more