Firebase دو پایگاه داده سند ابری با قابلیت دسترسی کارخواه ارائه میدهد. توصیه میکنیم مشتریان جدید با Cloud Firestore شروع کنند:
Cloud Firestore پایگاه داده سند سازگار با JSON در سطح سازمانی توصیهشده است که بیشاز ۶۰۰٬۰۰۰ توسعهدهنده به آن اعتماد دارند. این پایگاه داده برای برنامههایی با مدلهای داده غنی که به قابلیت پُرسمان، مقیاسپذیری، و دردسترس بودن بالا نیاز دارند مناسب است. همچنین همگامسازی مشتری با تأخیر کم و دسترسی به دادههای آفلاین را ارائه میدهد.
Realtime Database پایگاه داده کلاسیک Firebase JSON است. این پایگاه داده برای برنامههایی با مدلهای داده ساده که به جستجوهای ساده و همگامسازی با تأخیر کم و مقیاسپذیری محدود نیاز دارند مناسب است.
چه موارد مهم دیگری را باید درنظر گرفت؟
پساز فکر کردن درباره ملاحظات کلیدی قبلی، ممکن است آماده باشید که پایگاه دادهای را انتخاب کنید. اگر هنوز درحال سنجیدن مزایا و معایب هستید، این بخش تفاوتهای دیگر بین Cloud Firestore و Realtime Database را پوشش میدهد.
مدل داده
Realtime Database و Cloud Firestore هر دو پایگاه داده NoSQL هستند.
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
دادهها را بهصورت مجموعهای از اسناد ذخیره میکند.
درباره مدل داده Cloud Firestore بیشتر بدانید. |
دادهها را بهصورت یک درخت JSON بزرگ ذخیره میکند.
درباره مدل داده Realtime Database بیشتر بدانید. |
|
پشتیبانی همزمان و آفلاین
هر دو دارای کیتهای توسعه نرمافزار بیدرنگ و اولویتدهنده به تلفن همراه هستند و هر دو از ذخیرهسازی دادههای محلی برای برنامههای آماده برای حالت آفلاین پشتیبانی میکنند.
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
| پشتیبانی آفلاین برای Apple، Android، و کارخواهان وب. | پشتیبانی آفلاین برای کارخواهان Apple و Android. | |
حضور
دانستن اینکه مشتری چه زمانی آنلاین یا آفلاین است میتواند مفید باشد. Firebase Realtime Database میتواند وضعیت اتصال مشتری را ثبت کند و هربار که وضعیت اتصال مشتری تغییر میکند، بهروزرسانی ارائه دهد.
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
| بهطور بومی پشتیبانی نمیشود. میتوانید با همگامسازی Cloud Firestore و Realtime Database بااستفاده از Cloud Functions، از پشتیبانی Realtime Database برای حضور استفاده کنید. ساختن حضور در Cloud Firestore را ببینید. | از حضور پشتیبانی میشود. | |
درحال پُرسمان
دادهها را ازطریق پُرسمان از هریک از پایگاههای داده بازیابی، مرتب، و فیلتر کنید.
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
پرسوجوهای نمایهشده با مرتبسازی
و فیلتر کردن ترکیبی.
|
پرسوجوهای عمیق با ویژگیهای محدود
مرتبسازی و فیلتر کردن.
|
|
نوشتنها و تراکنشها
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
عملیات پیشرفته نوشتن و تراکنش.
|
عملیاتهای تراکنش و نوشتن پایه.
|
|
قابلیت اطمینان و عملکرد
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
Cloud Firestore
راهکاری منطقهای و چندمنطقهای
است که بهطور خودکار مقیاسبندی میشود.
|
Realtime Database یک
راهکار منطقهای است.
|
|
زمان فعال بودن دستگاه
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
عملکرد زمان فعال بودن دستگاه بسیار بالا.
|
عملکرد زمان فعال بودن دستگاه بالا.
|
|
میزانپذیری
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
مقیاسبندی خودکار است.
|
مقیاسبندی به بخشبندی نیاز دارد.
|
|
امنیت
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
قوانین غیرآبشاری که مجوز و اعتبارسنجی را ترکیب میکنند.
|
زبان قوانین آبشاری که مجوزدهی و اعتبارسنجی را از هم جدا میکند.
|
|
قیمتگذاری
هر دو راهکار در طرحهای قیمتگذاری Spark و Blaze دردسترس هستند.
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
| هزینهها عمدتاً براساس عملیات انجامشده در پایگاه داده شما
(خواندن، نوشتن، حذف) و با نرخ پایینتر، پهنای باند و فضای ذخیرهسازی است.
Cloud Firestore از بودجهها و هشدارهای ماهانه پشتیبانی میکند تا از صرف هزینه بیشتر از آنچه برایتان راحت است جلوگیری شود. درباره طرحهای قیمتگذاری Cloud Firestore بیشتر بخوانید. |
فقط برای پهنای باند و فضای ذخیرهسازی هزینه دریافت میکند، اما با نرخ بالاتر.
درباره طرحهای قیمتگذاری Realtime Database بیشتر بخوانید. |
|
استفاده از Cloud Firestore و Realtime Database
میتوانید از هر دو پایگاه داده در یک برنامه یا پروژه Firebase استفاده کنید. هر دو پایگاه داده NoSQL میتوانند انواع یکسانی از دادهها را ذخیره کنند و کتابخانههای کارخواه به روش مشابهی کار میکنند. اگر تصمیم گرفتید از هر دو پایگاه داده در برنامهتان استفاده کنید، تفاوتهای ذکرشده در بالا را بهخاطر داشته باشید.
درباره ویژگیهای دردسترس در Realtime Database و Cloud Firestore بیشتر بدانید.
آمادهاید پایگاه دادهای انتخاب کنید؟
امیدواریم این مقایسه به شما کمک کرده باشد تا درباره راهکار پایگاه داده Firebase تصمیم بگیرید. اکنون میتوانید با نحوه افزودن پایگاه داده به پروژههای Firebase آشنا شوید.
- برای Cloud Firestore، به شروع به کار با Cloud Firestore نگاهی بیندازید.
- برای Realtime Database، موضوع «شروع به کار» را برای پلاتفرم خود بخوانید: Apple، Android، C++، Unity، وب، یا REST.