Google Cloud Datastore проти Firebase [закрито]


96

Google надає дві хмарні служби зберігання даних Google Cloud Datastore та Firebase (після придбання). Хоча типові сценарії використання пропонуються розробнику для вибору між різними службами, що надаються хмарною платформою Google, немає жодної згадки про те, як Firebase вписується в картину в його поточній / майбутній розробці.

Чи може хтось уявити деяке розуміння цього питання та надати типові випадки використання Google Cloud Datastore проти Firebase?


2
У нас також є додаткова інформація тут: cloud.google.com/storage-options
Ден Макграт,

Firebase сам по собі не є службою зберігання даних, оскільки він охоплює набір продуктів, включаючи Cloud Firestore та Realtime Database для бази даних та Cloud Storage для файлів.
Енді Фусняк,

@DanMcGrath Datastore ніде не відображається у посиланні, яким ви поділилися. Або мені щось не вистачає?
Ронні Ройстон,

@Ron, у той час, коли було опубліковано оновлену версію Datastore, ребрендіровану як Cloud Firestore, це GA, тому ми використовуємо лише нову назву.
Ден Макграт,

@DanMcGrath прямо на. ... URL-адреса cloud.google.com/datastore все ще рекламує застарілу систему, тому я не був впевнений, про яку справу йшлося. Дякую.
Ронні Ройстон,

Відповіді:



61

Обидва продукти мають свої сильні та слабкі сторони. Ось кілька причин використовувати ту чи іншу:

Використовуйте Firebase, якщо хочете:

  • База даних без вашої власної серверної бази : пакети SDK Firebase дозволяють писати мобільні та веб-програми, не запускаючи власну серверну систему. Ви можете читати та записувати до бази даних Firebase безпосередньо з вашого додатка, не вимагаючи коду сервера. Модель безпеки бази даних дозволяє чітко контролювати доступ без сервера на основі ваших користувачів.
  • Дані в режимі реального часу : Firebase дозволяє прослуховувати зміни у ваших даних, що робить написання певних програм дуже простим. Чудовим прикладом є спільний текстовий редактор .
  • Проста модель даних : база даних Firebase зберігає JSON. Якщо ви знаєте JSON, ви знаєте модель даних Firebase.
  • Щоб скористатися іншими функціями Firebase : Наприклад, Firebase забезпечує управління користувачами та автентифікацію, що чудово працює з базою даних.

Використовуйте сховище даних, якщо хочете:


1
Він вважає, що фраза "База даних без власного інтерфейсу" застосовна до обох служб. Магазин даних є частиною Google Cloud, ви не підтримуєте власні сервери. Що стосується внутрішньої логіки, то більшість клієнтських бібліотек Datastore працюють на сервері, однак можна використовувати його REST API для мобільних та веб-додатків. Ви навіть можете зайти до того, як запустити клієнтську бібліотеку Node.js через браузер, перетворивши її на веб-бібліотеку.
TheAddonDepot

1
БД Firebase @DimuDesigns має правила безпеки, щоб захистити оновлення користувачів від псування у ваших даних. Наприклад, видалити дані інших людей. Це означає, що БД без бекенда, вам не потрібна бекенд для перевірки достовірності введених даних, тоді як неприпустимо дозволяти клієнту робити те саме з gdatastore
Тайна

@DimuDesigns або jonnydee: Чи має сховище даних усі функції, які має Firebase, а також дві перераховані для сховища даних? Або принаймні, будь ласка, дайте відповідь, чи зберігає Datastore також дані в режимі реального часу так само, як це робить Firebase?
Bryan Dimas

1
@BryanDimas Datastore не підтримує спочатку активатори подій у режимі реального часу при зміні даних. Однак є функція під назвою "Транзакційне чергування завдань". Це не в режимі реального часу, а життєздатний варіант. Хоча говорили про те, щоб впровадити цю функцію спочатку: issueetracker.google.com/issues/62959790
TheAddonDepot,

1
@BryanDimas Ось посилання на деяку документацію щодо "Транзакційного чергування завдань": cloud.google.com/appengine/docs/standard/python/ndb/…
TheAddonDepot

14

firebase можна сказати спеціально для мобільної платформи. Хмара Google була корпоративним рішенням.

Firebase розробив свої sdks, пам’ятаючи про Android, IOS, Web та Unity (ігровий движок). Вам не потрібен веб-сервер для взаємодії з його компонентами. Для цього достатньо його sdks. Тож ніяких витрат на веб-сервер або сервери додатків. У ньому є база даних у реальному часі, ви можете слухати, і це смішно швидко.

У ньому є служба обміну хмарними повідомленнями, автентифікація, функції лямбда-сигналу та накопичувач (як і будь-яка інша хмара). Його документація дуже стисла. Тому вам не потрібно переглядати 1000 сторінок, щоб зрозуміти будь-яку типову хмарну службу, наприклад AWS або Google Cloud. На інтеграцію моєї гри з AWS у мене пішов місяць, але на інтеграцію з firebase пішов лише тиждень.


8

Оновлення жовтня 2017 р. (Firebase випустив Cloud Firestore):

Слід зазначити, що з нещодавнім випуском Cloud Firestore (бета-версія станом на жовтень 2017 р.), Переваги Datastore перед "Firebase", про які згадав johnydee , тепер застаріли, якщо ви використовуєте продукт Firestore, оскільки він має потужні запити та є дуже масштабованим .

Ці продукти (Datastore та Firestore) мають спільні корені, і лише один насправді може бути використаний в одному проекті.

Відповідь Джонні все ще застосовується, якщо ви порівнюєте базу даних Firebase у реальному часі з Datastore.


Чи підтримує firestore гнучку підтримку індексів, що підтримує зигзагоподібне злиття, доступну в сховищі даних? Подібно до того, що описаний у cloud.google.com/appengine/articles/indexselection
user482594

7

Питання автоматично розглядається в останньому випуску Firebase, запущеному в Google IO 2016, в якому вони забезпечили масштабну інтеграцію між Firebase та Google Cloud Platform.

Будь ласка, див. Https://firebase.googleblog.com/2016/05/firebase-expands-to-become-unified-app-platform.html

Усі служби Google Cloud Platform тепер доступні - це набагато простіший спосіб через Firebase. Спосіб доступу Firebase до бази даних у реальному часі поширився і на Google Cloud Storage. Багато API на стороні клієнта Google Cloud, такі як Google Cloud Messaging, перейшли на бренд Firebase.

Firebase - це, очевидно, Google, призначений для подальшого доступу клієнта до інфраструктури хмарних служб Google.


2
Google Cloud Datastore - це загартована масштабована база даних, Firebase призначена лише для невеликих додатків (<10 тис. Підключень) і має регулярні простої міграції осколків
Марк Ессель,
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.