Firebase Realtime Database

আমাদের NoSQL ক্লাউড ডেটাবেসে ডেটা স্টোর ও সিঙ্ক করা। ডেটা রিয়েল-টাইমে সব ক্লায়েন্ট জুড়ে সিঙ্ক করা হয় এবং আপনার অ্যাপ অফলাইন হয়ে গেলেও উপলভ্য থাকে।

Realtime Database

Cloud Firestore

পছন্দের

Firebase Realtime Database হল ক্লাউড-হোস্টেড ডেটাবেস। ডেটা JSON হিসেবে সেভ করা হয় এবং রিয়েল-টাইমে কানেক্ট করা প্রতিটি ক্লায়েন্টের সাথে সিঙ্ক করা হয়। আমাদের Apple প্ল্যাটফর্ম, Android ও JavaScript SDK-এর সাহায্যে আপনি ক্রস-প্ল্যাটফর্ম অ্যাপ তৈরি করলে, আপনার সব ক্লায়েন্ট একটি Realtime Database ইনস্ট্যান্স শেয়ার করে এবং লেটেস্ট ডেটা সহ আপডেট অটোমেটিক পায়।

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


শুরু করার জন্য রেডি? আপনার প্ল্যাটফর্ম বেছে নিন:

iOS+ Android ওয়েব Flutter Unity C++ অ্যাডমিন REST API

গুরুত্বপূর্ণ ক্ষমতা

রিয়েলটাইম সাধারণ HTTP অনুরোধের পরিবর্তে, Firebase Realtime Database ডেটা সিনক্রোনাইজেশন ব্যবহার করে—ডেটা পরিবর্তন হলেই, কানেক্ট করা যেকোনও ডিভাইস মিলি সেকেন্ডের মধ্যে সেই আপডেট পেয়ে যায়। নেটওয়ার্কিং কোড সম্পর্কে চিন্তা না করেই কোলাবোরেটিভ ও ইমারসিভ অভিজ্ঞতা প্রদান করা।
অফলাইন Firebase অ্যাপ অফলাইনে থাকলেও রেসপন্সিভ থাকে কারণ Firebase Realtime Database SDK আপনার ডেটা ডিস্কে সেভ করে রাখে। কানেক্টিভিটি আবার চালু হলে, ক্লায়েন্ট ডিভাইস কোনও পরিবর্তন মিস করে থাকলে তা পেয়ে যায়, এর ফলে বর্তমান সার্ভার স্ট্যাটাসের সাথে এটি সিঙ্ক হয়ে যায়।
ক্লায়েন্ট ডিভাইস থেকে অ্যাক্সেস করা যায় Firebase Realtime Database সরাসরি মোবাইল ডিভাইস বা ওয়েব ব্রাউজার থেকে অ্যাক্সেস করা যায়; এর জন্য কোনও অ্যাপ্লিকেশন সার্ভারের প্রয়োজন নেই। Firebase Realtime Database নিরাপত্তা সংক্রান্ত নিয়ম, এক্সপ্রেশন-ভিত্তিক নিয়মের মাধ্যমে নিরাপত্তা ও ডেটা যাচাইকরণ উপলভ্য। ডেটা পড়া বা লেখার সময় এগুলি প্রয়োগ করা হয়।
একাধিক ডেটাবেস জুড়ে স্কেল করা Firebase Realtime Database Blaze প্রাইসিং প্ল্যান ব্যবহার করে, আপনি একই 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 Package Manager বা স্ক্রিপ্ট ইনক্লুড ব্যবহার করে ক্লায়েন্টদের দ্রুত যোগ করুন।
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 ছবি, ভিডিও ও অডিওর মতো ফাইল এবং ব্যবহারকারীর তৈরি করা অন্যান্য কন্টেন্ট স্টোর করে।

পরবর্তী ধাপ: