Google Cloud Datastore gegen Firebase [geschlossen]

96

Google bietet zwei Cloud-basierte Datenspeicherungsdienste an: Google Cloud Datastore und Firebase (nach der Übernahme). Während typische Verwendungsszenarien bereitgestellt werden, damit ein Entwickler zwischen verschiedenen von der Google Cloud-Plattform bereitgestellten Diensten auswählen kann, wird nicht erwähnt, wie Firebase in seiner aktuellen / zukünftigen Entwicklung in das Bild passt.

Kann sich jemand einen Einblick in die Angelegenheit vorstellen und typische Anwendungsfälle für Google Cloud Datastore vs Firebase bereitstellen?

Chebyr
quelle
2
Wir haben auch mehr Informationen hier: cloud.google.com/storage-options
Dan McGrath
Firebase ist kein Datenspeicherdienst für sich, da es eine Reihe von Produkten umfasst, darunter Cloud Firestore und Realtime Database for Database sowie Cloud Storage for Files.
Andy Fusniak
@DanMcGrath Datastore wird an keiner Stelle des von Ihnen freigegebenen Links angezeigt . Oder fehlt mir etwas?
Ronnie Royston
@ Ron, in der Zeit seitdem wurde die aktualisierte Version von Datastore umbenannt, die als Cloud Firestore GA umbenannt wurde. Daher verwenden wir nur den neuen Namen.
Dan McGrath
@ DanMcGrath direkt am. ... die URL cloud.google.com/datastore wirbt immer noch für das veraltete System, sodass ich mir nicht sicher war, was der Deal war. Vielen Dank.
Ronnie Royston

Antworten:

61

Beide Produkte haben ihre Stärken und Schwächen. Hier sind einige Gründe, den einen oder anderen zu verwenden:

Verwenden Sie Firebase, wenn Sie möchten:

  • Eine Datenbank ohne eigenes Backend : Mit den Firebase-SDKs können Sie mobile und Web-Apps schreiben, ohne Ihr eigenes Backend ausführen zu müssen. Sie können direkt von Ihrer App aus in die Firebase-Datenbank lesen und in diese schreiben, ohne dass ein Servercode erforderlich ist. Das Datenbank - Sicherheitsmodell ermöglicht eine Feinzugriffskontrolle körnige ohne einen Server auf der Grundlage Ihren Benutzer.
  • Echtzeitdaten : Mit Firebase können Sie Änderungen an Ihren Daten abhören, wodurch das Schreiben bestimmter Arten von Apps sehr einfach wird. Ein gutes Beispiel ist der kollaborative Texteditor .
  • Ein einfaches Datenmodell : In der Firebase-Datenbank wird JSON gespeichert . Wenn Sie JSON kennen, kennen Sie das Firebase-Datenmodell.
  • So profitieren Sie von anderen Firebase-Funktionen : Beispielsweise bietet Firebase eine Benutzerverwaltung und -authentifizierung , die sich hervorragend für die Datenbank eignet.

Verwenden Sie den Datenspeicher, wenn Sie möchten:

jonnydee
quelle
1
Es wird angenommen, dass der Ausdruck "Eine Datenbank ohne eigenes Back-End" für beide Dienste gilt. Der Datenspeicher ist Teil von Google Cloud. Sie warten keine eigenen Server. In Bezug auf die Back-End-Logik sind die meisten Client-Bibliotheken von Datastore serverbasiert. Es ist jedoch möglich, die REST-APIs für mobile und webbasierte Apps zu verwenden. Sie können sogar so weit gehen, dass Sie die Node.js-Clientbibliothek über browserify ausführen und in eine webbasierte Bibliothek konvertieren.
TheAddonDepot
1
@DimuDesigns Firebase DB verfügt über Sicherheitsregeln, um Benutzeraktualisierungen vor dem Durcheinander mit Ihren Daten zu schützen. Löschen Sie beispielsweise andere Personendaten. Das bedeutet, dass DB ohne Backend kein Backend benötigt, um die Gültigkeit der Eingabe zu überprüfen, während es nicht akzeptabel ist, den Client dasselbe mit gdatastore tun zu lassen
Thaina
@ DimuDesigns oder jonnydee: Verfügt Datastore über alle Funktionen von Firebase sowie über die beiden für Datastore aufgelisteten Funktionen? Oder zumindest, bitte antworten Sie, hat Datastore genauso Echtzeitdaten wie Firebase?
Bryan Dimas
1
@BryanDimas Datastore unterstützt keine nativen Echtzeit-Ereignisauslöser, wenn sich Daten ändern. Es gibt jedoch eine Funktion namens "Einreihen von Transaktionsaufgaben". Es ist nicht in Echtzeit, aber es ist eine praktikable Option. Es wurde jedoch über die native Implementierung der Funktion gesprochen: issuetracker.google.com/issues/62959790
TheAddonDepot
1
@BryanDimas Hier ist ein Link zu einer Dokumentation zum Thema " Einreihen von
TheAddonDepot
14

Firebase könnte speziell für mobile Plattformen gesagt werden. Google Cloud war eine Unternehmenslösung.

Firebase hat seine SDKS unter Berücksichtigung von Android, IOS, Web und Unity (Game Engine) entwickelt. Sie benötigen den Webserver nicht, um mit seinen Komponenten zu interagieren. Die SDKS reichen dafür aus. Also keine Kosten für Webserver oder Anwendungsserver. Es hat eine Echtzeitdatenbank, die Sie anhören können, und es ist lächerlich schnell.

Es verfügt über Cloud-Messaging-Service, Authentifizierung, Lambda-Funktionen und Massenspeicher (wie jede andere Cloud). Die Dokumentation ist sehr prägnant. Sie müssen also nicht Tausende von Seiten durchgehen, um einen typischen Cloud-Service wie AWS oder Google Cloud zu verstehen. Ich habe einen Monat gebraucht, um mein Spiel in AWS zu integrieren, aber ich habe nur eine Woche gebraucht, um mich in Firebase zu integrieren.

sn.anurag
quelle
8

Update Oktober 2017 (Firebase veröffentlicht Cloud Firestore):

Es sollte beachtet werden, dass mit der jüngsten Version von Cloud Firestore (Beta ab Oktober 2017) die von Johnydee erwähnten Vorteile von Datastore gegenüber "Firebase" veraltet sind, wenn Sie das Firestore-Produkt verwenden, da es leistungsstarke Abfragen enthält und hoch skalierbar ist .

Diese Produkte (Datenspeicher und Firestore) haben gemeinsame Wurzeln und nur eines kann tatsächlich für dasselbe Projekt verwendet werden.

Johnys Antwort gilt weiterhin, wenn Sie die Firebase-Echtzeitdatenbank mit dem Datenspeicher vergleichen.

Kqtr
quelle
Unterstützt Firestore flexible Zick-Zack-Merge-Join-ähnliche Indexunterstützung, die im Datenspeicher verfügbar ist? Wie in cloud.google.com/appengine/articles/indexselection
user482594
7

Die Frage wird automatisch in der neuesten Version von Firebase behandelt, die in Google IO 2016 veröffentlicht wurde und in der eine umfassende Integration zwischen Firebase und Google Cloud Platform ermöglicht wurde.

Weitere Informationen finden Sie unter https://firebase.googleblog.com/2016/05/firebase-expands-to-become-unified-app-platform.html

Alle Dienste der Google Cloud Platform sind jetzt über Firebase viel einfacher zugänglich. Die Firebase-Methode für den Zugriff auf die Echtzeitdatenbank wurde auch auf Google Cloud Storage erweitert. Viele der clientseitigen APIs von Google Cloud wie Google Cloud Messaging sind auf die Marke Firebase umgestiegen.

Firebase ist eindeutig der von Google beabsichtigte Weg für den clientseitigen Zugriff auf die Google Cloud Services-Infrastruktur.

Chebyr
quelle
2
Google Cloud Datastore ist eine kampferprobte skalierbare Datenbank. Firebase ist nur für kleine Apps (<10.000 Verbindungen) gedacht und hat regelmäßige Ausfallzeiten bei der Shard-Migration
Mark Essel,