2016-05-12 33 views
41

Google fornisce due servizi di archiviazione dati basati su cloud Google Cloud Datastore e Firebase (dopo l'acquisizione). Mentre vengono forniti scenari di utilizzo tipici per consentire a uno sviluppatore di effettuare la selezione tra vari servizi forniti dalla piattaforma cloud di Google, non viene menzionato il modo in cui Firebase si inserisce nell'immagine nel suo sviluppo attuale/futuro.Google Cloud datastore vs Firebase

chiunque può immaginare una certa comprensione in materia e fornire casi tipici di utilizzo di Google Cloud Datastore vs Firebase?

+2

Abbiamo anche maggiori informazioni qui: https://cloud.google.com/storage-options/ –

risposta

43

Entrambi i prodotti hanno i loro punti di forza e di debolezza. Ecco alcuni motivi per utilizzare uno o l'altro:

Usa Firebase se si desidera:

  • Una base di dati senza il proprio backend: Gli SDK Firebase consentono di scrivere applicazioni mobile e web senza correre il vostro proprio back-end. È possibile leggere e scrivere nel database Firebase direttamente dalla tua app, non è richiesto alcun codice server. Il database security model consente il controllo dell'accesso a grana fine senza un server basato sui propri utenti.
  • dati in tempo reale: Firebase permette di ascoltare le modifiche sui dati, il che rende la scrittura certo tipo di applicazioni molto facile. Un grande esempio è il collaborative text editor.
  • Un semplice modello di dati: Il Firebase negozi database JSON. Se conosci JSON, conosci il modello di dati Firebase.
  • Per beneficiare di altre funzioni di Firebase: Ad esempio, Firebase fornisce user management & authentication che funziona perfettamente con il database.

Usa datastore se volete:

+0

Si pensa che il frase "Un database senza il proprio back-end" è applicabile a entrambi i servizi. Datastore fa parte di Google Cloud, non stai mantenendo i tuoi server. Per quanto riguarda la logica di back-end, la maggior parte delle librerie client di Datastore sono basate su server, tuttavia è possibile utilizzare le API REST per le app mobili e basate sul Web. Puoi persino arrivare fino alla libreria client Node.js attraverso browserify, convertendolo in libreria basata sul web. –

+1

@DimuDesigns Il DB di Firebase ha regole di sicurezza per proteggere l'aggiornamento degli utenti dai problemi con i dati. Ad esempio, cancella i dati di altre persone. Significa DB senza backend, non è necessario il back-end per verificare la validità dell'input, mentre non è accettabile lasciare che il client faccia lo stesso con gdatastore – Thaina

+0

@DimuDesigns o jonnydee: Does Datastore ha tutte le funzionalità che Firebase ha * plus * i due elencato per Datastore? O almeno, per favore rispondi, Datastore ha anche dati in tempo reale allo stesso modo di Firebase? –

7

La domanda è rivolta automaticamente l'ultima versione di Firebase lanciato in Google IO 2016, in cui hanno portato integrazione su larga scala tra Firebase e Google Cloud Platform.

Si prega di vedere https://firebase.googleblog.com/2016/05/firebase-expands-to-become-unified-app-platform.html

Tutti i servizi Google Cloud Platform sono ora accessibili è il modo più semplice attraverso Firebase. Il modo in cui Firebase accede al database in tempo reale è stato esteso anche a Google Cloud Storage. Molte delle API lato client di Google Cloud come Google Cloud Messaging sono passate al marchio Firebase.

Firebase è chiaramente la soluzione avanzata da Google per l'accesso lato client all'infrastruttura di Google Cloud Services.

+2

Google Cloud Datastore è un db scalabile potenziato da battaglia, Firebase è solo per applicazioni su piccola scala (<10k connessioni) e ha regolari tempi di inattività di migrazione shard –

6

firebase si può dire specificamente per piattaforma mobile. Google cloud era una soluzione aziendale.

Firebase ha sviluppato le sue SDK mantenendo Android, IOS, Web e Unity (motore di gioco) in mente. Non è necessario che il server Web interagisca con i suoi componenti.I suoi sdks sono sufficienti per farlo. Quindi nessun costo per server Web o server applicazioni. Ha un database in tempo reale, puoi ascoltarlo ed è incredibilmente veloce.

Dispone di servizi di messaggistica cloud, autenticazione, funzioni Lambda e archiviazione di massa (come qualsiasi altro cloud). La sua documentazione è molto succinta. Quindi non è necessario passare attraverso migliaia di pagine per comprendere qualsiasi servizio cloud tipico come AWS o Google Cloud. Mi ci è voluto un mese per integrare il mio gioco con AWS ma mi ci è voluta una settimana per integrarmi con Firebase.

5

Va notato che con il recente rilascio di Firebase Firestore (Beta a partire da ottobre 2017), i vantaggi di archivio dati oltre "Firebase" che johnydee citato sono ormai obsoleti, se si utilizza il prodotto FireStore, in quanto ha potente query ed è altamente scalabile.

Questi prodotti (Datastore e Firestore) condividono radici comuni e solo uno può essere effettivamente utilizzato nello stesso progetto.

La risposta di Johny si applica comunque se si confronta il database in tempo reale di Firebase in Datastore.

+0

Firestore supporta lo zigzag flessibile unire-join come il supporto per l'indice che è disponibile nel datastore? Come descritto in https://cloud.google.com/appengine/articles/indexselection – user482594