Utilizzo di Cloud Firestore in modalità Datastore

Firestore è un database di documenti NoSQL creato per offrire scalabilità automatica, prestazioni elevate e facilità di sviluppo delle applicazioni. È la versione più recente di Datastore e introduce diversi miglioramenti rispetto a Datastore.

Poiché Firestore in modalità Datastore è ottimizzato per i casi d'uso dei server e per App Engine, consigliamo di utilizzare Firestore Modalità Datastore per i database che verranno utilizzati principalmente le app di App Engine. Firestore in modalità Native è più utile per i casi d'uso di notifiche mobile e in tempo reale. Per ulteriori informazioni Per le modalità di Firestore, consulta Scegliere tra la modalità Native e modalità Datastore.

Utilizzo della modalità Datastore con App Engine

Per utilizzare la modalità Datastore con App Engine:

  1. Se non l'hai ancora fatto, crea un database e scegli Firestore in modalità Datastore.

    Puoi utilizzare i database Datastore esistenti con App Engine app. Verrà eseguito l'upgrade automatico di questi database esistenti a Firestore in Datastore .

    1. Nell'app, dichiara Datastore come dipendenza aggiungendo google/cloud-datastore al file composer.json dell'app ed eseguendo composer install dalla directory dell'app. Scopri di più su composer.

    2. Utilizza la libreria client di Google Cloud per lettura e scrittura di entità ed eseguire query sui dati.

    Configurazione degli indici

    La modalità Datastore utilizza indici per ogni query eseguita dalla tua applicazione. Gli indici vengono aggiornati ogni volta che un'entità cambia, in modo che i risultati possano essere restituiti rapidamente quando l'app esegue una query.

    La modalità Datastore crea automaticamente indici a proprietà singola da utilizzare con tipi di query semplici. Per query complesse che includono più proprietà, devi configurare gli indici composti nel file index.yaml dell'app.

    Il server di sviluppo App Engine aggiornerà il file index.yaml con gli indici composti necessari per eseguire i test. Analogamente, L'emulatore di modalità Datastore può generare indici quando esegui i test.

    Puoi anche aggiungere gli indici al file index.yaml della tua app manualmente se non esegui test locali o se i tuoi test non includono query complesse.

    Impostazione delle autorizzazioni del database

    Per impostazione predefinita, la tua app dispone di tutte le autorizzazioni necessarie per leggere e scrivere nei database in modalità Datastore e Firestore nel tuo progetto Google Cloud.

    Per gestire queste autorizzazioni, ogni app App Engine utilizza un account di servizio predefinito che concede l'accesso in lettura e scrittura completo alla modalità Datastore e ai database Firestore nello stesso progetto dell'app. Puoi modificare le autorizzazioni dell'account di servizio predefinito, ma la tua app potrebbe perdere l'accesso a meno che non assegni un ruolo IAM con le autorizzazioni richieste.

    Per informazioni su come consentire ad altri utenti, app o progetti di accedere a un database, consulta Accesso al database.

    Utilizzo dell'emulatore in modalità Datastore per i test locali

    Google Cloud CLI include un emulatore locale dell'ambiente di produzione con modalità Datastore. Puoi utilizzare l'emulatore per sviluppare e testare la tua applicazione in locale. Inoltre, l'emulatore può aiutarti a generare indici per l'istanza in produzione in modalità Datastore ed eliminare gli indici non necessari.

    Se utilizzi il server di sviluppo locale di App Engine per testare la tua app, puoi assicurarti che il server utilizzi l'emulatore della modalità Datastore impostando il flag --support_datastore_emulator=true all'avvio del server.

    Se utilizzi l'emulatore di modalità Datastore, dev_appserver mostrerà:

    ... Using Cloud Datastore Emulator.
    

    Prezzi, quote e limiti

    La modalità Datastore offre una quota gratuita con limiti giornalieri. Gli account pagati offrono operazioni di lettura, scrittura e spazio di archiviazione illimitato. Ulteriori informazioni è disponibile nella pagina Quote di Datastore.