Da PHP Version 5.5 nicht mehr von der Community unterstützt wird, empfehlen wir neuen Anwendungen dringend, die PHP 7-Laufzeit zu verwenden.

Cloud Firestore im Datastore-Modus verwenden

Firestore ist eine NoSQL-Dokumentdatenbank, die auf Autoscaling, hohe Leistung und einfache Anwendungsentwicklung ausgelegt ist. Es ist die neueste Version von Datastore und bietet einige Verbesserungen.

Für Datenbanken, die hauptsächlich von App Engine-Anwendungen genutzt werden, sollten Sie Firestore im Datastore-Modus verwenden. Weitere Informationen zu Firestore-Modi finden Sie unter Zwischen nativem Modus und Datastore-Modus wechseln.

Datastore-Modus mit App Engine verwenden

So verwenden Sie den Datastore-Modus mit App Engine:

  1. Falls noch nicht geschehen, erstellen Sie eine Datenbank und wählen Sie Firestore im Datastore-Modus aus.

    Sie können für App Engine-Anwendungen vorhandene Datastore-Datenbanken verwenden. Diese bereits vorhandenen Datenbanken werden automatisch auf Firestore im Datastore-Modus aktualisiert.

  2. Deklarieren Sie in Ihrer Anwendung Datastore als Abhängigkeit. Fügen Sie dazu google/cloud-datastore zur Datei composer.json der Anwendung hinzu und führen Sie composer install aus dem Verzeichnis Ihrer Anwendung aus. Weitere Informationen dazu finden Sie unter Composer.

  3. Verwenden Sie die Google Cloud-Clientbibliothek, damit Sie Entitäten lesen und schreiben sowie Daten abfragen können.

Indexe konfigurieren

Im Datastore-Modus werden für jede von Ihrer Anwendung ausgeführte Abfrage Indexe verwendet. Diese Indexe werden bei jeder Änderung von Entitäten aktualisiert. Dies gewährleistet, dass die Ergebnisse schnell zurückgegeben werden, wenn die Anwendung eine Abfrage startet.

Im Datastore-Modus werden für einfache Abfragetypen automatisch Indexe mit nur einem Attribut erstellt. Bei komplexen Abfragen, die mehrere Attribute enthalten, müssen Sie zusammengesetzte Indexe in der Datei index.yaml Ihrer Anwendung konfigurieren.

Der App Engine-Entwicklungsserver aktualisiert Ihre Datei index.yaml mit den benötigten zusammengesetzten Indexen zum Ausführen Ihrer Tests. Ebenso generiert der Datastore-Modus-Emulator Indexe für das Ausführen von Tests.

Sie haben auch die Möglichkeit, die Indexe manuell zur Datei index.yaml Ihrer Anwendung hinzufügen, wenn Sie keine lokalen Tests ausführen oder Ihre Tests keine komplexen Abfragen enthalten.

Datenbankberechtigungen festlegen

Standardmäßig hat Ihre Anwendung alle Berechtigungen, die zum Lesen und Schreiben in Datastore-Modus- und Firestore-Datenbanken in Ihrem Google Cloud-Projekt erforderlich sind.

Zur Verwaltung dieser Berechtigungen nutzt jede App Engine-Anwendung ein Standarddienstkonto, das vollständigen Lese- und Schreibzugriff auf Datastore-Modus- und Firestore-Datenbanken im selben Projekt wie die Anwendung bietet. Sie können die Berechtigungen des Standarddienstkontos ändern. Ihre Anwendung verliert dann aber möglicherweise den Zugriff, solange ihr keine IAM-Rolle mit den erforderlichen Berechtigungen zugewiesen ist.

Informationen darüber, wie Sie anderen Nutzern, Anwendungen oder Projekten Zugriff auf eine Datenbank gewähren, finden Sie unter Auf Ihre Datenbank zugreifen.

Datastore-Modus-Emulator für lokale Tests verwenden

Das Cloud SDK enthält einen lokalen Emulator für die Produktionsumgebung im Datastore-Modus. Sie können mit dem Emulator Ihre Anwendung lokal entwickeln und testen. Darüber hinaus haben Sie die Möglichkeit, mit dem Emulator Indexe für Ihre Cloud Firestore-Produktionsinstanz im Datastore-Modus zu generieren und nicht benötigte Indexe zu löschen.

Wenn Sie den lokalen App Engine-Entwicklungsserver zum Testen Ihrer Anwendung verwenden, legen Sie beim Starten des Servers das Flag --support_datastore_emulator=true fest. Damit ist gewährleistet, dass der Server den Datastore-Modus-Emulator nutzt.

Wenn Sie den Datastore-Modus-Emulator verwenden, zeigt „dev_appserver“ Folgendes an:

... Using Cloud Datastore Emulator.

Preise, Kontingente und Limits

Der Datastore-Modus bietet ein kostenloses Kontingent mit täglichen Limits. Kostenpflichtige Konten bieten unbegrenzte Speicher-, Lese- und Schreibvorgänge. Weitere Informationen finden Sie auf der Seite Datastore-Kontingente.