Cloud Firestore

ক্লায়েন্ট ও সার্ভার-সাইড ডেভেলপমেন্টের জন্য ডেটা স্টোর ও সিঙ্ক করতে Google Cloud থেকে নমনীয়, স্কেলেবল NoSQL ক্লাউড ডেটাবেস ব্যবহার করুন।

Cloud Firestore হল মোবাইল, ওয়েব ও সার্ভার ডেভেলপমেন্টের জন্য Google Cloud-এর একটি ফ্লেক্সিবল, স্কেলেবল ডেটাবেস। Firebase Realtime Database-এর মতো, এটি রিয়েল-টাইম লিসনারের মাধ্যমে ক্লায়েন্ট অ্যাপ জুড়ে আপনার ডেটা সিঙ্ক করে রাখে এবং মোবাইল ও ওয়েবের জন্য অফলাইন সহায়তা প্রদান করে, যাতে আপনি নেটওয়ার্ক লেটেন্সি বা ইন্টারনেট কানেক্টিভিটি নির্বিশেষে কাজ করে এমন রেসপন্সিভ অ্যাপ তৈরি করতে পারেন। Cloud Firestore এছাড়াও, Google Cloud প্রোডাক্টের সাথে নির্বিঘ্নে ইন্টিগ্রেশন অফার করে, যার মধ্যে Cloud Run ফাংশনও রয়েছে।

Cloud Firestore-এর দুটি এডিশন আছে - Firestore Standard এডিশন এবং Firestore Enterprise এডিশন, যা বিভিন্ন প্রয়োজন পূরণ করে। এইসব এডিশন সম্পর্কে আরও জানতে এখানে দেখুন।

মূল ক্ষমতা

ফ্লেক্সিবিলিটি Cloud Firestore ডেটা মডেল নমনীয়, হায়ারার্কিক্যাল ডেটা স্ট্রাকচারকে সাপোর্ট করে। আপনার ডেটা ডকুমেন্টে স্টোর করুন, যা কালেকশনে সাজানো থাকে। ডকুমেন্টে সাব-কালেকশন ছাড়াও জটিল নেস্টেড অবজেক্ট থাকতে পারে।
ভাবপূর্ণ কোয়েরি করা Cloud Firestore-এ, আপনি কোয়েরি ব্যবহার করে স্বতন্ত্র, নির্দিষ্ট ডকুমেন্ট বা কোনও কালেকশনের সব ডকুমেন্ট ফিরিয়ে আনতে পারেন যা আপনার কোয়েরি প্যারামিটারের সাথে ম্যাচ করে। আপনার কোয়েরিতে একাধিক, চেইন করা ফিল্টার থাকতে পারে এবং ফিল্টারিং ও সর্টিং একসাথে করা যেতে পারে।
রিয়েল-টাইম আপডেট Realtime Database-এর মতো, Cloud Firestore কানেক্ট করা যেকোনও ডিভাইসে ডেটা আপডেট করতে ডেটা সিঙ্ক করার সুবিধা ব্যবহার করে। তবে, এটি সহজ, এক-বার ফেচ করার কোয়েরি দক্ষতার সাথে করার জন্যও ডিজাইন করা হয়েছে।
অফলাইনে সহায়তা Cloud Firestore আপনার অ্যাপ সক্রিয়ভাবে ব্যবহার করছে এমন ডেটা ক্যাশে করে, যাতে ডিভাইস অফলাইন থাকলেও অ্যাপ ডেটা লিখতে, পড়তে, শুনতে এবং কোয়েরি করতে পারে। ডিভাইস আবার অনলাইন হলে, Cloud Firestore স্থানীয়ভাবে করা যেকোনও পরিবর্তন Cloud Firestore-এ সিঙ্ক করে।
স্কেল করার জন্য ডিজাইন করা হয়েছে Cloud Firestore আপনাকে Google Cloud-এর শক্তিশালী ইনফ্রাস্ট্রাকচারের সেরা সুবিধা প্রদান করে: অটোমেটিক মাল্টি-রিজিয়ন ডেটা রেপ্লিকেশন, শক্তিশালী কনসিস্টেন্সি গ্যারান্টি, অ্যাটমিক ব্যাচ অপারেশন এবং ACID ট্রানজ্যাকশন সহায়তা। আমরা Cloud Firestore এমনভাবে ডিজাইন করেছি যাতে এটি বিশ্বের সবচেয়ে বড় অ্যাপের সবচেয়ে কঠিন ডেটাবেস ওয়ার্কলোড ম্যানেজ করতে পারে।
MongoDB কম্প্যাটিবিলিটি Cloud Firestore-এ MongoDB-এর সাথে মানানসই API আছে। আপনি আগে থেকে থাকা MongoDB অ্যাপ্লিকেশন কোড, ড্রাইভার, টুল এবং MongoDB-এর ওপেন-সোর্স ইকোসিস্টেম Cloud Firestore-এর সাথে Firestore Enterprise সংস্করণে ইন্টিগ্রেট করতে পারবেন।

এটি কীভাবে কাজ করে?

Cloud Firestore হল ক্লাউড-হোস্ট করা, NoSQL ডেটাবেস যা আপনার Apple, Android এবং ওয়েব অ্যাপ নেটিভ SDK ব্যবহার করে সরাসরি অ্যাক্সেস করতে পারে। এছাড়াও, Cloud Firestore REST ও RPC API-এর পাশাপাশি নেটিভ Node.js, Java, Python, Unity, C++ ও Go SDK-তে উপলভ্য।

Cloud Firestore-এর ডকুমেন্ট ডেটা মডেল অনুসরণ করে, আপনি এমন ডেটা স্টোর করেন যাতে ভ্যালুর সাথে ম্যাপ করা ফিল্ড থাকে। এইসব ডকুমেন্ট কালেকশনে স্টোর করা হয়, যা হল আপনার ডকুমেন্টের কন্টেনার। আপনি নিজের ডেটা সাজাতে এবং কোয়েরি তৈরি করতে এটি ব্যবহার করতে পারেন। ডকুমেন্ট অনেক ধরনের ডেটার ধরন সাপোর্ট করে, সহজ স্ট্রিং ও সংখ্যা থেকে শুরু করে জটিল, নেস্টেড অবজেক্ট পর্যন্ত। এছাড়াও, আপনি ডকুমেন্টের মধ্যে সাব-কালেকশন তৈরি করতে এবং ডেটাবেস বাড়ার সাথে সাথে স্কেল করে এমন হায়ারার্কিক্যাল ডেটা স্ট্রাকচার তৈরি করতে পারেন। Cloud Firestore ডেটা মডেল আপনার অ্যাপের জন্য সবচেয়ে ভালো কাজ করে এমন যেকোনও ডেটা স্ট্রাকচারকে সাপোর্ট করে।

এছাড়াও, Cloud Firestore-এ কোয়েরি করা হল এক্সপ্রেসিভ, দক্ষ এবং নমনীয়। সম্পূর্ণ কালেকশন বা কোনও নেস্টেড সাবকালেকশন ফিরিয়ে আনার প্রয়োজন ছাড়াই ডকুমেন্ট লেভেলে ডেটা ফিরিয়ে আনার জন্য শ্যালো কোয়েরি তৈরি করুন। আপনার ফলাফল পেজিনেট করতে, কোয়েরি বা কার্সরে সর্টিং, ফিল্টারিং ও সীমা যোগ করুন। প্রতিবার আপডেট হওয়ার সময় আপনার সম্পূর্ণ ডেটাবেস পুনরুদ্ধার না করে, আপনার অ্যাপে ডেটা আপ-টু-ডেট রাখতে, রিয়েল-টাইম লিসেনার যোগ করুন। আপনার অ্যাপে রিয়েল-টাইম লিসেনার যোগ করলে, আপনার ক্লায়েন্ট অ্যাপ যে ডেটা শুনছে তাতে পরিবর্তন হলে, ডেটা স্ন্যাপশট সহ আপনাকে বিজ্ঞপ্তি পাঠানো হয়, শুধুমাত্র নতুন পরিবর্তনগুলি রিট্রিভ করা হয়।

Firebase Authentication এবং Android, Apple প্ল্যাটফর্ম ও JavaScript-এর জন্য Cloud Firestore Security Rules অথবা সার্ভার-সাইড ভাষার জন্য Identity and Access Management (IAM) ব্যবহার করে Cloud Firestore-এ আপনার ডেটার অ্যাক্সেস সুরক্ষিত করুন।

প্রয়োগ করার পাথ

Cloud Firestore SDK ইন্টিগ্রেট করা Gradle, Swift প্যাকেজ ম্যানেজার বা স্ক্রিপ্ট অন্তর্ভুক্তির মাধ্যমে দ্রুত ক্লায়েন্ট অন্তর্ভুক্ত করুন।
আপনার ডেটা সুরক্ষিত রাখা মোবাইল/ওয়েব ও সার্ভার ডেভেলপমেন্টের জন্য আপনার ডেটা সুরক্ষিত রাখতে, যথাক্রমে Cloud Firestore Security Rules বা IAM ব্যবহার করুন।
ডেটা যোগ করা আপনার ডেটাবেসে ডকুমেন্ট ও সংগ্রহ তৈরি করুন।
ডেটা পান ডেটাবেস থেকে ডেটা রিট্রিভ করতে কোয়েরি তৈরি করুন বা রিয়েল-টাইম লিসনার ব্যবহার করুন।

পরবর্তী ধাপ