Firebase Realtime Database
আমাদের NoSQL ক্লাউড ডেটাবেসের মাধ্যমে ডেটা স্টোর ও সিঙ্ক করুন। ডেটা রিয়েল-টাইমে সব ক্লায়েন্ট জুড়ে সিঙ্ক করা হয় এবং আপনার অ্যাপ অফলাইন হয়ে গেলেও উপলভ্য থাকে।
Realtime Database
Cloud Firestore
পছন্দেরFirebase Realtime Database হল ক্লাউড-হোস্টেড ডেটাবেস। ডেটা JSON হিসেবে সেভ করা হয় এবং রিয়েল-টাইমে কানেক্ট করা প্রতিটি ক্লায়েন্টের সাথে সিঙ্ক করা হয়। আমাদের Apple প্ল্যাটফর্ম, Android এবং JavaScript SDK-এর সাহায্যে আপনি যখন ক্রস-প্ল্যাটফর্ম অ্যাপ তৈরি করেন, তখন আপনার সব ক্লায়েন্ট একটি Realtime Database ইনস্ট্যান্স শেয়ার করে এবং লেটেস্ট ডেটা সহ অটোমেটিক আপডেট পায়।
বিকল্প হিসেবে, আরও সমৃদ্ধ ডেটা মডেল, কোয়েরি করার ক্ষমতা, স্কেলেবিলিটি এবং আরও বেশি উপলভ্যতার প্রয়োজন হয় এমন আধুনিক অ্যাপ্লিকেশনের জন্য Cloud Firestore ব্যবহার করে দেখুন।
শুরু করার জন্য রেডি? আপনার প্ল্যাটফর্ম বেছে নিন:
গুরুত্বপূর্ণ ক্ষমতা
| রিয়েলটাইম | সাধারণ HTTP অনুরোধের পরিবর্তে, Firebase Realtime Database ডেটা সিঙ্ক করার সুবিধা ব্যবহার করে—প্রতিবার ডেটা পরিবর্তন হলে, কানেক্ট করা যেকোনও ডিভাইস মিলিসেকেন্ডের মধ্যে সেই আপডেট পেয়ে যায়। নেটওয়ার্কিং কোড সম্পর্কে চিন্তা না করেই কোলাবোরেটিভ ও ইমারসিভ অভিজ্ঞতা প্রদান করা। |
| অফলাইন | Firebase অ্যাপ অফলাইনেও রেসপন্সিভ থাকে কারণ Firebase Realtime Database SDK আপনার ডেটা ডিস্কে সেভ করে রাখে। কানেক্টিভিটি আবার চালু হয়ে গেলে, ক্লায়েন্ট ডিভাইস মিস করা পরিবর্তনগুলি পেয়ে যায়, যা বর্তমান সার্ভার স্ট্যাটাসের সাথে সিঙ্ক করা হয়। |
| ক্লায়েন্ট ডিভাইস থেকে অ্যাক্সেস করা যায় | Firebase Realtime Database সরাসরি মোবাইল ডিভাইস বা ওয়েব ব্রাউজার থেকে অ্যাক্সেস করা যায়; এর জন্য কোনও অ্যাপ্লিকেশন সার্ভারের প্রয়োজন নেই। Firebase Realtime Database-এর মাধ্যমে নিরাপত্তা ও ডেটা যাচাইকরণ উপলভ্য, এক্সপ্রেশন-ভিত্তিক নিয়ম যা ডেটা পড়া বা লেখার সময় কার্যকর করা হয়। |
| একাধিক ডেটাবেস জুড়ে স্কেল করুন | Blaze প্রাইসিং প্ল্যানে Firebase Realtime Database-এর মাধ্যমে, আপনি একই Firebase প্রোজেক্টে একাধিক ডেটাবেস ইনস্ট্যান্স জুড়ে আপনার ডেটা বিভক্ত করে স্কেলে আপনার অ্যাপের ডেটার প্রয়োজনীয়তা পূরণ করতে পারেন। আপনার প্রোজেক্টে Firebase Authentication-এর মাধ্যমে যাচাইকরণ স্ট্রিমলাইন করুন এবং আপনার ডেটাবেস ইনস্ট্যান্স জুড়ে ব্যবহারকারীদের যাচাই করুন। প্রতিটি ডেটাবেস ইনস্ট্যান্সের জন্য কাস্টম Firebase Realtime Database Security Rules-এর মাধ্যমে প্রতিটি ডেটাবেসের ডেটা অ্যাক্সেস নিয়ন্ত্রণ করুন। |
এটি কীভাবে কাজ করে?
Firebase Realtime Database আপনাকে ক্লায়েন্ট-সাইড কোড থেকে সরাসরি ডেটাবেসে নিরাপদ অ্যাক্সেস দিয়ে সমৃদ্ধ, কোলাবোরেটিভ অ্যাপ্লিকেশন তৈরি করতে দেয়। ডেটা লোকাল স্টোরেজে সেভ করা হয় এবং অফলাইনে থাকলেও রিয়েল-টাইম ইভেন্ট ফায়ার করা চালিয়ে যাওয়া হয়, যার ফলে গ্রাহক একটি রেসপন্সিভ অভিজ্ঞতা পান। ডিভাইস আবার কানেক্ট হলে, Realtime Database লোকাল ডেটার পরিবর্তন রিমোট আপডেটের সাথে সিঙ্ক করে যা ক্লায়েন্ট অফলাইন থাকার সময় হয়েছে এবং কোনও দ্বন্দ্ব থাকলে তা অটোমেটিক মার্জ করে।
Realtime Database-এ আপনার ডেটা কীভাবে স্ট্রাকচার করা উচিত এবং কখন ডেটা থেকে পড়া বা ডেটাতে লেখা যাবে তা নির্ধারণ করতে, Firebase Realtime Database নিরাপত্তা সংক্রান্ত নিয়ম নামে একটি ফ্লেক্সিবল, এক্সপ্রেশন-ভিত্তিক নিয়ম সংক্রান্ত ভাষা প্রদান করা হয়। Firebase Authentication-এর সাথে ইন্টিগ্রেট করা হলে, ডেভেলপাররা নির্ধারণ করতে পারেন যে কার কাছে কোন ডেটার অ্যাক্সেস আছে এবং কীভাবে তারা এটি অ্যাক্সেস করতে পারবেন।
Realtime Database হল একটি NoSQL ডেটাবেস এবং সেই কারণে রিলেশনাল ডেটাবেসের তুলনায় এটির অপ্টিমাইজেশন ও ক্ষমতা আলাদা। Realtime Database API এমনভাবে ডিজাইন করা হয়েছে যাতে শুধুমাত্র দ্রুত সম্পন্ন করা যায় এমন অপারেশনই করা যায়। এটি আপনাকে এমন একটি দুর্দান্ত রিয়েল-টাইম অভিজ্ঞতা তৈরি করতে দেয় যা রেসপন্সিভনেসের সাথে আপস না করেই লক্ষ লক্ষ ব্যবহারকারীকে পরিষেবা দিতে পারে। এই কারণে, ব্যবহারকারীরা কীভাবে আপনার ডেটা অ্যাক্সেস করবেন এবং তারপর সেই অনুযায়ী ডেটা স্ট্রাকচার করবেন তা নিয়ে চিন্তাভাবনা করা গুরুত্বপূর্ণ।
প্রয়োগ করার পাথ
| Firebase Realtime Database SDK ইন্টিগ্রেট করুন | Gradle, Swift প্যাকেজ ম্যানেজার বা স্ক্রিপ্ট অন্তর্ভুক্তির মাধ্যমে দ্রুত ক্লায়েন্ট অন্তর্ভুক্ত করুন। | |
| Realtime Database রেফারেন্স তৈরি করা | ডেটা সেট করতে বা ডেটা পরিবর্তনের ব্যাপারে সাবস্ক্রাইব করতে, "users/user:1234/phone_number"-এর মতো আপনার JSON ডেটা রেফারেন্স করুন। | |
| ডেটা সেট করুন এবং পরিবর্তনের জন্য শুনুন | ডেটা লিখতে বা পরিবর্তন সাবস্ক্রাইব করতে এইসব রেফারেন্স ব্যবহার করুন। | |
| অফলাইন পারসিস্টেন্স চালু করুন | ডিভাইসের লোকাল ডিস্কে ডেটা লেখার অনুমতি দিন যাতে অফলাইনে থাকাকালীন এটি উপলভ্য থাকে। | |
| আপনার ডেটা সুরক্ষিত রাখুন | আপনার ডেটা সুরক্ষিত রাখতে Firebase Realtime Database নিরাপত্তা সংক্রান্ত নিয়ম ব্যবহার করুন। |
অন্য ধরনের ডেটা স্টোর করা
- Cloud Firestore হল Firebase ও Google Cloud থেকে মোবাইল, ওয়েব ও সার্ভার ডেভেলপমেন্টের জন্য একটি ফ্লেক্সিবল, স্কেলেবল ডেটাবেস। ডেটাবেস বিকল্পের মধ্যে পার্থক্য সম্পর্কে আরও জানতে, ডেটাবেস বেছে নিন: Cloud Firestore অথবা Realtime Database দেখুন।
- Firebase Remote Config ব্যবহারকারীদের কোনও আপডেট ডাউনলোড করার প্রয়োজন ছাড়াই আপনার অ্যাপের আচরণ এবং চেহারা পরিবর্তন করতে ডেভেলপার-নির্দিষ্ট কী-ভ্যালু পেয়ার স্টোর করে।
- Firebase Hosting আপনার ওয়েবসাইটের জন্য HTML, CSS ও JavaScript হোস্ট করে, এর পাশাপাশি গ্রাফিক্স, ফন্ট ও আইকনের মতো ডেভেলপার-প্রদত্ত অন্যান্য অ্যাসেটও হোস্ট করে।
- Cloud Storage ছবি, ভিডিও ও অডিওর মতো ফাইল এবং ব্যবহারকারীর তৈরি করা অন্যান্য কন্টেন্ট স্টোর করে।
পরবর্তী ধাপ:
- Apple প্ল্যাটফর্ম, Android, ওয়েব, Admin SDKs, অথবা REST API ব্যবহার করে ডেটা সেট করুন এবং পরিবর্তনগুলি শুনুন।
- আপনার Apple, Android বা ওয়েব অ্যাপে Firebase Realtime Database যোগ করুন।
- Firebase Realtime Database Security Rules ব্যবহার করে আপনার ফাইল কীভাবে সুরক্ষিত রাখবেন সেই সম্পর্কে জানুন।