Auf dieser Seite wird beschrieben, wie Entitäten in Firestore im Datastore-Modus mithilfe des verwalteten Export- und Importdienstes exportiert und importiert werden. Verwalteter Export- und Importdienst ist über die Google Cloud Console, die Google Cloud CLI und der Datastore Admin API (REST, RPC).
Mit dem verwalteten Export- und Importdienst können Sie versehentlich gelöschte Daten wiederherstellen und Daten für die Offlineverarbeitung exportieren. Sie können alle Entitäten oder nur bestimmte Arten von Entitäten exportieren. Ebenso können Sie alle Daten eines Exports oder nur bestimmte Arten importieren. Berücksichtigen Sie bei der Verwendung des verwalteten Export- und Importdiensts Folgendes:
Der Exportdienst verwendet Eventual Consistency-Lesevorgänge. Sie können nicht davon ausgehen, dass ein Export zu einem bestimmten Zeitpunkt stattfindet. Der Export kann Entitäten einbeziehen, die nach dem Beginn des Exports geschrieben wurden, und Entitäten ausschließen, die vor dem Beginn des Exports geschrieben wurden.
Ein Export enthält keine Indexe. Beim Importieren werden die erforderlichen Indexe automatisch entsprechend den aktuellen Indexdefinitionen Ihrer Datenbank neu erstellt. Entitätsspezifische Attributwert-Indexeinstellungen werden exportiert und während des Imports berücksichtigt.
Beim Importieren werden Entitäten keine neuen IDs zugewiesen. Importe verwenden die zum Zeitpunkt des Exports vorhandenen IDs und überschreiben alle vorhandenen Entitäten mit derselben ID. Während eines Imports werden die IDs für den Zeitraum reserviert, in dem die Entitäten importiert werden. Durch diese Funktion werden ID-Kollisionen mit neuen Entitäten verhindert, wenn Schreibvorgänge während der Ausführung eines Imports aktiviert sind.
Wenn eine Entität in Ihrer Datenbank nicht von einem Import betroffen ist, verbleibt sie nach dem Import in der Datenbank.
Aus einer Datenbank im Datastore-Modus exportierte Daten können in eine andere Datenbank im Datastore-Modus importiert werden, auch wenn sich diese in einem anderen Projekt befindet.
Im verwalteten Export- und Importdienst ist die Anzahl gleichzeitiger Exporte und Importe auf 50 begrenzt. Je Projekt sind bis zu 20 Export- und Importanfragen pro Minute möglich. Für jede Anfrage begrenzt der Dienst die Anzahl der Kombinationen von Entitätsfiltern auf 100.
Die Ausgabe eines verwalteten Exports verwendet das LevelDB-Logformat.
Sie müssen beim Exportieren einen Entitätsfilter angeben, um nur einen Teil der Entitäten zu importieren oder Daten in BigQuery zu importieren.
Der Dateiname „
.overall_export_metadata
“ muss mit dem Namen des übergeordneten Elements übereinstimmen Ordner:gs://BUCKET_NAME/OPTIONAL_NAMESPACE_PATH/PARENT_FOLDER_NAME/PARENT_FOLDER_NAME.overall_export_metadata
Wenn Sie die Ausgabedateien eines Exports verschieben oder kopieren, behalten Sie das Feld
PARENT_FOLDER_NAME
, Inhalt der Unterordner und der.overall_export_metadata
-Dateiname identisch ist.
Hinweise
Bevor Sie den verwalteten Export- und Importdienst verwenden können:
Aktivieren Sie die Abrechnung für Ihr Google Cloud-Projekt. Nur Google Cloud-Projekte mit aktivierter Abrechnung können den Export und zu importieren.
Erstellen Sie einen Cloud Storage-Bucket am selben Speicherort, an dem sich Ihre Firestore-Datenbank im Datastore-Modus befindet. Einen Bucket mit der Funktion "Anfragesteller bezahlt" können Sie nicht für Export- und Importvorgänge verwenden.
Wenn Sie Daten exportieren, weisen Sie Ihrem Nutzerkonto eine IAM-Rolle zu, die die Berechtigung
datastore.databases.export
gewährt. Wenn Sie Daten importieren, weisen Sie eine Rolle mit der Berechtigungdatastore.databases.import
zu. Die RolleDatastore Import Export Admin
beispielsweise gewährt beide Berechtigungen.Befindet sich der Cloud Storage-Bucket in einem anderen Projekt, Gewähren Sie dem Firestore-Dienst-Agent Zugriff auf den Bucket.
gcloud
für das Projekt einrichten
Wenn Sie Ihre Import- und Exportvorgänge mit gcloud
starten möchten, richten Sie gcloud
ein und stellen Sie auf eine der folgenden Arten eine Verbindung zu Ihrem Projekt her:
Rufen Sie
gcloud
über die Google Cloud Console mit Cloud Shell auf.Konfigurieren Sie die gcloud CLI, um Ihr aktuelles Projekt zu verwenden:
gcloud config set project project-id
Berechtigungen
Zum Ausführen von Export- und Importvorgängen benötigen Sie Der Dienst-Agent im Datastore-Modus benötigt die folgenden Berechtigungen für Identity and Access Management.
Nutzerkontoberechtigungen
Zum Starten des Vorgangs müssen das Nutzerkonto oder Dienstkonto die IAM-Berechtigungen datastore.databases.export
und datastore.databases.import
haben. Wenn Sie der Projektinhaber sind, hat Ihr Konto bereits die erforderlichen Berechtigungen. Andernfalls gewähren die folgenden IAM-Rollen die erforderlichen Berechtigungen:
- Datastore-Inhaber
- Import-Export-Administrator für Datastore
Sie können diese Berechtigungen auch mit einer benutzerdefinierten Rolle zuweisen.
Ein Projektinhaber kann eine dieser Rollen durch Ausführen der Schritte unter Zugriffsrechte erteilen zuweisen.
Berechtigungen des Dienst-Agents
Export- und Importvorgänge verwenden einen Firestore-Dienst-Agent, um Cloud Storage-Vorgänge autorisieren. Firestore-Dienst-Agent verwendet die folgende Namenskonvention:
- Firestore-Dienst-Agent
service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com
Weitere Informationen zu Dienst-Agents finden Sie unter Dienstmitarbeiter:
Der Firestore-Dienst-Agent benötigt Zugriff auf die Cloud Storage-Bucket, der in einem Export- oder Importvorgang verwendet wird. Wenn Ihr Der Cloud Storage-Bucket befindet sich im selben Projekt wie Ihr Firestore kann der Firestore-Dienst-Agent auf die Bucket ein.
Befindet sich der Cloud Storage-Bucket in einem anderen Projekt, muss dem Firestore-Dienst-Agent Zugriff auf Cloud Storage gewähren Bucket.
Dem Dienst-Agent Rollen zuweisen
Sie können das gsutil-Befehlszeilentool verwenden, um eine der folgenden Rollen zuzuweisen. So weisen Sie beispielsweise die Rolle „Storage-Administrator“ zu: an den Firestore-Dienst-Agent führen Sie folgenden Befehl aus:
gsutil iam ch serviceAccount:service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com:roles/storage.admin \ gs://[BUCKET_NAME]
Ersetzen Sie PROJECT_NUMBER
durch Ihre Projektnummer, die
wird verwendet, um Ihren Firestore-Dienst-Agent zu benennen. So rufen Sie die
Name des Dienst-Agents: Weitere Informationen finden Sie unter Name des Dienst-Agents ansehen.
Alternativ können Sie Weisen Sie diese Rolle über die Google Cloud Console zu.
Name des Dienst-Agents ansehen
Sie können sich das Konto ansehen, das von den Import- und Exportvorgängen zur Autorisierung verwendet wird Anfragen von der Seite Import/Export in der Google Cloud Console. Sie können auch Prüfen, ob Ihre Datenbank Firestore verwendet oder das alte App Engine-Dienstkonto.
-
Rufen Sie in der Google Cloud Console die Seite Datenbanken auf.
-
Wählen Sie die benötigte Datenbank aus der Liste der Datenbanken aus.
-
Klicken Sie im Navigationsmenü auf Importieren/Exportieren.
- Sehen Sie sich das Autorisierungskonto neben dem Import-/Exportjobs ausführen als Label.
Exportvorgänge
Ändern Sie bei Exportvorgängen mit einem Bucket in einem anderen Projekt die Berechtigungen des Buckets, eine der folgenden Identity and Access Management-Rollen zuzuweisen an den Dienst-Agent des Datastore-Modus des Projekts die Ihre Datenbank im Datastore-Modus enthält:
- Storage-Administrator
- Inhaber (einfache Rolle)
Sie können auch eine Benutzerdefinierte IAM-Rolle mit etwas anderen Berechtigungen als in den oben aufgeführten Rollen:
storage.buckets.get
storage.objects.create
storage.objects.delete
storage.objects.list
Importvorgänge
Bei Importvorgängen mit einem Cloud Storage-Bucket in einem anderen Projekt Ändern Sie die Berechtigungen des Buckets, um eine der folgenden Optionen zuzuweisen: Cloud Storage-Rollen für den Dienst im Datastore-Modus Agent des Projekts, das Ihre Datenbank im Datastore-Modus enthält:
- Storage-Administrator
- Sowohl Storage-Objekt-Betrachter als auch Leser alter Storage-Buckets
Mit den folgenden Berechtigungen können Sie auch eine benutzerdefinierte IAM-Rolle erstellen:
storage.buckets.get
storage.objects.get
Verwaltete Export- und Importvorgänge starten
In diesem Abschnitt wird beschrieben, wie ein verwalteter Export- oder Importvorgang gestartet wird.
Alle Entitäten exportieren
Console
Rufen Sie in der Google Cloud Console die Seite Datenbanken auf.
Wählen Sie die benötigte Datenbank aus der Liste der Datenbanken aus.
- Klicken Sie im Navigationsmenü auf Importieren/Exportieren.
- Klicken Sie auf Exportieren.
- Setzen Sie das Feld Namespace auf
All Namespaces
und das Feld Art aufAll Kinds
. - Geben Sie unter Ziel den Namen Ihres Cloud Storage-Buckets ein.
- Klicken Sie auf Exportieren.
Die Console kehrt zur Seite Import/Export zurück. In einer Benachrichtigung wird der Erfolg oder Misserfolg Ihrer verwalteten Exportanfrage gemeldet.
gcloud
Verwenden Sie den gcloud firestore export
.
um alle Entitäten in Ihrer Datenbank zu exportieren.
gcloud firestore export gs://bucket-name --async --database=DATABASE
Dabei ist bucket-name der Name Ihres Cloud Storage-Buckets und ein optionales Präfix, z. B. bucket-name/datastore-exports/export-name
. Sie können dasselbe Präfix nicht für einen anderen Exportvorgang verwenden. Wenn Sie kein Dateipräfix angeben, erstellt der verwaltete Exportdienst ein Präfix anhand der aktuellen Uhrzeit.
Verwenden Sie das Flag [--async
][async-flag], um zu verhindern, dass gcloud
auf
um den Vorgang abzuschließen. Wenn Sie das Flag --async
weglassen, können Sie
Ctrl+c
, um das Warten auf einen Vorgang zu beenden. Dies bricht den Vorgang aber nicht ab.
Legen Sie das Flag --database
auf den Namen der Datenbank fest, aus der Sie die Entitäten exportieren möchten. Verwenden Sie für die Standarddatenbank --database='(default)'
.
REST
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: Ihre Projekt-ID
- bucket-name: Name Ihres Cloud Storage-Buckets
HTTP-Methode und URL:
POST https://datastore.googleapis.com/v1/projects/project-id:export
JSON-Text anfordern:
{ "outputUrlPrefix": "gs://bucket-name", }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
<ph type="x-smartling-placeholder">{ "name": "projects/project-id/operations/operation-id", "metadata": { "@type": "type.googleapis.com/google.datastore.admin.v1.ExportEntitiesMetadata", "common": { "startTime": "2019-09-18T18:42:26.591949Z", "operationType": "EXPORT_ENTITIES", "state": "PROCESSING" }, "entityFilter": {}, "outputUrlPrefix": "gs://bucket-name/2019-09-18T18:42:26_85726" } }
Bestimmte Arten oder Namespaces exportieren
Um eine bestimmte Teilmenge von Arten und/oder Namespaces zu exportieren, setzen Sie einen Entitätsfilter mit Werten für Arten und Namespace-IDs. Jede Anfrage ist auf 100 Kombinationen von Entitätsfiltern beschränkt, wobei jede Kombination aus gefiltertem Art und Namespace als separater Filter auf dieses Limit angerechnet wird.
Console
In der Console können Sie entweder alle Arten oder eine bestimmte Art auswählen. Ebenso können Sie alle Namespaces oder einen bestimmten Namespace auswählen.
Um eine Liste der zu exportierenden Namespaces und Arten anzugeben, verwenden Sie gcloud
.
Rufen Sie in der Google Cloud Console die Seite Datenbanken auf.
Wählen Sie die benötigte Datenbank aus der Liste der Datenbanken aus.
Klicken Sie im Navigationsmenü auf Importieren/Exportieren.
Klicken Sie auf Exportieren.
Stellen Sie das Feld Namespace auf
All Namespaces
oder auf den Namen eines Ihrer Namespaces ein.Stellen Sie das Feld Art auf
All Kinds
oder auf den Namen einer Art ein.Geben Sie unter Ziel den Namen Ihres Cloud Storage-Buckets ein.
Klicken Sie auf Exportieren.
Die Console kehrt zur Seite Import/Export zurück. In einer Benachrichtigung wird der Erfolg oder Misserfolg Ihrer verwalteten Exportanfrage gemeldet.
gcloud
gcloud firestore export --collection-ids="KIND1,KIND2" \ --namespaces="(default),NAMESPACE2" \ gs://bucket-name \ --async \ --database=DATABASE
Dabei ist bucket-name der Name Ihres Cloud Storage-Buckets und ein optionales Präfix, z. B. bucket-name/datastore-exports/export-name
. Sie können dasselbe Präfix nicht für einen anderen Exportvorgang verwenden. Wenn Sie kein Dateipräfix angeben, erstellt der verwaltete Exportdienst ein Präfix anhand der aktuellen Uhrzeit.
Verwenden Sie das Flag [--async
][async-flag], um zu verhindern, dass gcloud
auf
um den Vorgang abzuschließen. Wenn Sie das Flag --async
weglassen, können Sie
Ctrl+c
, um das Warten auf einen Vorgang zu beenden. Dies bricht den Vorgang aber nicht ab.
Legen Sie das Flag --database
auf den Namen der Datenbank fest, aus der Sie bestimmte Arten oder Namespaces exportieren möchten. Verwenden Sie für die Standarddatenbank --database='(default)'
.
REST
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: Ihre Projekt-ID
- bucket-name: Name Ihres Cloud Storage-Buckets
- kind: Entitätstyp
- namespace: Namespace-ID (verwenden Sie "" für die Standard-Namespace-ID)
HTTP-Methode und URL:
POST https://datastore.googleapis.com/v1/projects/project-id:export
JSON-Text anfordern:
{ "outputUrlPrefix": "gs://bucket-name", "entityFilter": { "kinds": ["kind"], "namespaceIds": ["namespace"], }, }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
<ph type="x-smartling-placeholder">{ "name": "projects/project-id/operations/operation-id", "metadata": { "@type": "type.googleapis.com/google.datastore.admin.v1.ExportEntitiesMetadata", "common": { "startTime": "2019-09-18T21:17:36.232704Z", "operationType": "EXPORT_ENTITIES", "state": "PROCESSING" }, "entityFilter": { "kinds": [ "Task" ], "namespaceIds": [ "" ] }, "outputUrlPrefix": "gs://bucket-name/2019-09-18T21:17:36_82974" } }
Metadatendateien
Beim Exportvorgang wird für jede angegebene Kombination von Namespace und Art eine Metadatendatei erstellt. Metadatendateien heißen in der Regel NAMESPACE_NAME_KIND_NAME.export_metadata
. Wenn jedoch der Name eines Namespace oder einer Art einen ungültigen Cloud Storage-Objektnamen ergeben würde, erhält die Datei den Namen export[NUM].export_metadata
.
Die Metadatendateien sind Protokollpuffer und können mit dem Protokollcompiler protoc
decodiert werden.
Sie können beispielsweise eine Metadatendatei decodieren, um den Namespace und die Art der Exportdateien zu bestimmen:
protoc --decode_raw < export0.export_metadata
Alle Entitäten importieren
Console
Rufen Sie in der Google Cloud Console die Seite Datenbanken auf.
Wählen Sie die benötigte Datenbank aus der Liste der Datenbanken aus.
Klicken Sie im Navigationsmenü auf Importieren/Exportieren.
Klicken Sie auf Importieren.
Klicken Sie im Feld
File
auf Durchsuchen und wählen Sie eine.overall_export_metadata
-Datei aus.Achten Sie darauf, dass die Datei
.overall_export_metadata
nicht vom Standardspeicherort verschoben wird.Setzen Sie das Feld Namespace auf
All Namespaces
und das Feld Art aufAll Kinds
.Klicken Sie auf Importieren.
Die Console kehrt zur Seite Import/Export zurück. In einer Benachrichtigung wird der Erfolg oder Misserfolg Ihrer verwalteten Importanfrage gemeldet.
gcloud
Verwenden Sie den Befehl gcloud lightstore import können Sie alle Entitäten importieren, die zuvor mit der verwalteten Exportdienst.
gcloud firestore import gs://bucket-name/file-path/file-name.overall_export_metadata \ --async \ --database=DATABASE
Dabei ist bucket-name/file-path/file-name der Pfad zur Datei overall_export_metadata
in Ihrem Cloud Storage-Bucket.
Verwenden Sie das Flag [--async
][async-flag], um zu verhindern, dass gcloud
auf
um den Vorgang abzuschließen. Wenn Sie das Flag --async
weglassen, können Sie
Ctrl+c
, um das Warten auf einen Vorgang zu beenden. Dies bricht den Vorgang aber nicht ab.
Legen Sie das Flag --database
auf den Namen der Datenbank fest, in die Sie alle Entitäten importieren möchten. Verwenden Sie für die Standarddatenbank --database='(default)'
.
REST
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: Ihre Projekt-ID
- bucket-name: Name Ihres Cloud Storage-Buckets
- object-name: Name Ihres Cloud Storage-Objekts (Beispiel:
2017-05-25T23:54:39_76544/2017-05-25T23:54:39_76544.overall_export_metadata
)
HTTP-Methode und URL:
POST https://datastore.googleapis.com/v1/projects/project-id:import
JSON-Text anfordern:
{ "inputUrl": "gs://bucket-name/object-name", }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
<ph type="x-smartling-placeholder">{ "name": "projects/project-id/operations/operation-id", "metadata": { "@type": "type.googleapis.com/google.datastore.admin.v1.ImportEntitiesMetadata", "common": { "startTime": "2019-09-18T21:25:02.863621Z", "operationType": "IMPORT_ENTITIES", "state": "PROCESSING" }, "entityFilter": {}, "inputUrl": "gs://bucket-name/2019-09-18T18:42:26_85726/2019-09-18T18:42:26_85726.overall_export_metadata" } }
overall_export_metadata
-Datei finden
Sie können den für den Importspeicherort zu verwendenden Wert mithilfe der Methode Cloud Storage-Browser in der Google Cloud Console:
Sie können auch abgeschlossene Vorgänge auflisten und beschreiben. Im Feld outputURL
wird der Name der Datei overall_export_metadata
angezeigt:
"outputUrl": "gs://bucket-name/2017-05-25T23:54:39_76544/2017-05-25T23:54:39_76544.overall_export_metadata",
Bestimmte Arten oder Namespaces importieren
Um eine bestimmte Teilmenge von Arten und/oder Namespaces zu importieren, setzen Sie einen Entitätsfilter mit Werten für Arten und Namespace-IDs.
Arten und Namespaces lassen sich nur dann angeben, wenn die Exportdateien mit einem Entitätsfilter erstellt wurden. Der Import einer Teilmenge von Arten und Namespaces aus einem Export aller Entitäten wird nicht unterstützt.
Console
In der Console können Sie entweder alle Arten oder eine bestimmte Art auswählen. Ebenso können Sie alle Namespaces oder einen bestimmten Namespace auswählen.
Um eine Liste der zu importierenden Namespaces und Arten anzugeben, verwenden Sie gcloud
.
Rufen Sie in der Google Cloud Console die Seite Datenbanken auf.
Wählen Sie die benötigte Datenbank aus der Liste der Datenbanken aus.
Klicken Sie im Navigationsmenü auf Importieren/Exportieren.
Klicken Sie auf Importieren.
Klicken Sie im Feld
File
auf Durchsuchen und wählen Sie eine.overall_export_metadata
-Datei aus.Achten Sie darauf, dass Sie die Datei
.overall_export_metadata
und keinen.export_metadata
-Datei.Setzen Sie das Feld Namespace auf
All Namespaces
oder auf einen bestimmten Namespace.Setzen Sie das Feld Art auf
All Kinds
oder auf eine bestimmte Art.Klicken Sie auf Importieren.
Die Console kehrt zur Seite Import/Export zurück. In einer Benachrichtigung wird der Erfolg oder Misserfolg Ihrer verwalteten Importanfrage gemeldet.
gcloud
gcloud firestore import --collection-ids="KIND1,KIND2" \ --namespaces="(default),NAMESPACE2" \ gs://bucket-name/file-path/file-nameoverall_export_metadata \ --async \ --database=DATABASE
Dabei ist bucket-name/file-path/file-name der Pfad zur Datei overall_export_metadata
in Ihrem Cloud Storage-Bucket.
Verwenden Sie das Flag [--async
][async-flag], um zu verhindern, dass gcloud
auf
um den Vorgang abzuschließen. Wenn Sie das Flag --async
weglassen, können Sie
Ctrl+c
, um das Warten auf einen Vorgang zu beenden. Dies bricht den Vorgang aber nicht ab.
Legen Sie das Flag --database
auf den Namen der Datenbank fest, in die Sie die bestimmten Arten oder Namespaces importieren möchten. Verwenden Sie für die Standarddatenbank --database='(default)'
.
REST
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: Ihre Projekt-ID
- bucket-name: Name Ihres Cloud Storage-Buckets
- object-name: Name Ihres Cloud Storage-Objekts (Beispiel:
2017-05-25T23:54:39_76544/2017-05-25T23:54:39_76544.overall_export_metadata
) - kind: Entitätstyp
- namespace: Namespace-ID (verwenden Sie "" für die Standard-Namespace-ID)
HTTP-Methode und URL:
POST https://datastore.googleapis.com/v1/projects/project-id:import
JSON-Text anfordern:
{ "inputUrl": "gs://bucket-name/object-name", "entityFilter": { "kinds": ["kind"], "namespaceIds": ["namespace"], }, }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
<ph type="x-smartling-placeholder">{ "name": "projects/project-id/operations/operation-id", "metadata": { "@type": "type.googleapis.com/google.datastore.admin.v1.ImportEntitiesMetadata", "common": { "startTime": "2019-09-18T21:51:02.830608Z", "operationType": "IMPORT_ENTITIES", "state": "PROCESSING" }, "entityFilter": { "kinds": [ "Task" ], "namespaceIds": [ "" ] }, "inputUrl": "gs://bucket-name/2019-09-18T21:49:25_96833/2019-09-18T21:49:25_96833.overall_export_metadata" } }
Export und Import aus PITR-Daten
Sie können Ihre Datenbank aus PITR-Daten nach Cloud Storage exportieren
mit dem Befehl gcloud firestore export
. Sie können PITR-Daten exportieren, bei denen der Zeitstempel ein ganzer Minutenwert innerhalb
der letzten sieben Tage, aber nicht vor dem earliestVersionTime
. Wenn die Daten nicht mehr
zum angegebenen Zeitstempel existiert, schlägt der Exportvorgang fehl.
Der PITR-Exportvorgang unterstützt alle Filter, einschließlich des Exports aller Entitäten und bestimmter Arten oder Namespaces.
Exportieren Sie die Datenbank und geben Sie dabei den Parameter
snapshot-time
für den erforderlichen Wiederherstellungszeitstempel an.gcloud
Führen Sie den folgenden Befehl aus, um die Datenbank in Ihren Bucket zu exportieren.
gcloud firestore export gs://[BUCKET_NAME_PATH] \ --snapshot-time=[PITR_TIMESTAMP] \ --collection-ids=[COLLECTION_IDS] \ --namespace-ids=[NAMESPACE_IDS]
Dabei gilt:
PITR_TIMESTAMP
: ein PITR-Zeitstempel mit minutengenauem Detaillierungsgrad, z. B.2023-05-26T10:20:00.00Z
.
[Der Export einer bestimmten Teilmenge von Arten und/oder Namespaces mit einem Entitätsfilter][export-art] wird ebenfalls unterstützt.
Beachten Sie die folgenden Punkte, bevor Sie PITR-Daten exportieren:
- Zeitstempel in RFC 3339 angeben
Format.
Beispiel:
2020-09-01T23:59:30.234233Z
. - Achten Sie darauf, dass der angegebene Zeitstempel ein ganzminütiger Zeitstempel ist, der innerhalb der letzten sieben Tage liegt, aber nicht vor
earliestVersionTime
. Wenn zum angegebenen Zeitstempel keine Daten mehr vorhanden sind, erhalten Sie eine Fehlermeldung. - Ein fehlgeschlagener PITR-Export wird Ihnen nicht in Rechnung gestellt.
Import in eine Datenbank
Führen Sie die Schritte unter Alle Entitäten importieren aus. um Ihre exportierte Datenbank zu importieren. Wenn eine Entität bereits in Ihrem werden sie überschrieben. [Das Importieren einer bestimmten Teilmenge von Arten und/oder Namespaces mit einem Entitätsfilter][import-kind] wird ebenfalls unterstützt.
Transformationen importieren
Beachten Sie beim Importieren von Entitäten aus einem anderen Projekt, dass Entitätsschlüssel die Projekt-ID enthalten. Ein Importvorgang aktualisiert Entitätsschlüssel und Schlüsselreferenzattribute in den Importdaten mit der Projekt-ID des Zielprojekts. Wenn durch diese Aktualisierung die Entitätsgrößen erhöht werden, kann es bei Importvorgängen zu Fehlermeldungen wie "Entität ist zu groß" oder "Indexeinträge zu groß" kommen.
Durch den Import in ein Zielprojekt mit einer kürzeren Projekt-ID können Sie diese Fehler vermeiden. Dies wirkt sich nicht auf Importvorgänge mit Daten aus demselben Projekt aus.
Umgang mit lang andauernden Vorgängen
Verwaltete Import- und Exportvorgänge sind lang andauernde Vorgänge. Diese Methodenaufrufe können sehr viel Zeit in Anspruch nehmen.
Nachdem Sie einen Export- oder Importvorgang gestartet haben, weist der Datastore-Modus dem Vorgang einen eindeutigen Namen zu. Sie können den Vorgangsnamen verwenden, um den Vorgang zu löschen, abzubrechen oder den Status zu prüfen.
Vorgangsnamen haben das Präfix projects/[PROJECT_ID]/databases/(default)/operations/
, zum Beispiel:
projects/project-id/databases/(default)/operations/ASA1MTAwNDQxNAgadGx1YWZlZAcSeWx0aGdpbi1zYm9qLW5pbWRhEgopEg
Wenn Sie für gcloud
-Befehle einen Vorgangsnamen angeben, können Sie das Präfix weglassen.
Lang andauernde Vorgänge auflisten
Sie können laufende und kürzlich abgeschlossene Vorgänge auf folgende Weise aufrufen. Die Vorgänge sind nach Abschluss einige Tage lang in der Liste enthalten:
Console
Eine Liste der lang andauernden Vorgänge finden Sie in der Seite Import/Export der Google Cloud Console.
Rufen Sie in der Google Cloud Console die Seite Datenbanken auf.
Wählen Sie die benötigte Datenbank aus der Liste der Datenbanken aus.
Klicken Sie im Navigationsmenü auf Importieren/Exportieren.
gcloud
Verwenden Sie zum Auflisten lang andauernder Vorgänge die Methode gcloud datastore operations list: .
gcloud datastore operations list
Beispiel: Ein kürzlich abgeschlossener Exportvorgang enthält die folgenden Informationen:
{ "operations": [ { "name": "projects/project-id/operations/ASAyMDAwOTEzBxp0bHVhZmVkBxJsYXJ0bmVjc3Utc2Jvai1uaW1kYRQKKhI", "metadata": { "@type": "type.googleapis.com/google.datastore.admin.v1.ExportEntitiesMetadata", "common": { "startTime": "2017-12-05T23:01:39.583780Z", "endTime": "2017-12-05T23:54:58.474750Z", "operationType": "EXPORT_ENTITIES" }, "progressEntities": { "workCompleted": "21933027", "workEstimated": "21898182" }, "progressBytes": { "workCompleted": "12421451292", "workEstimated": "9759724245" }, "entityFilter": { "namespaceIds": [ "" ] }, "outputUrlPrefix": "gs://bucket-name" }, "done": true, "response": { "@type": "type.googleapis.com/google.datastore.admin.v1.ExportEntitiesResponse", "outputUrl": "gs://bucket-name/2017-05-25T23:54:39_76544/2017-05-25T23:54:39_76544.overall_export_metadata" } } ] }
rest
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: Ihre Projekt-ID
HTTP-Methode und URL:
GET https://datastore.googleapis.com/v1/projects/project-id/operations
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Weitere Informationen zur Antwort finden Sie weiter unten.
Beispiel: Ein kürzlich abgeschlossener Exportvorgang enthält die folgenden Informationen:
{ "operations": [ { "name": "projects/project-id/operations/ASAyMDAwOTEzBxp0bHVhZmVkBxJsYXJ0bmVjc3Utc2Jvai1uaW1kYRQKKhI", "metadata": { "@type": "type.googleapis.com/google.datastore.admin.v1.ExportEntitiesMetadata", "common": { "startTime": "2017-12-05T23:01:39.583780Z", "endTime": "2017-12-05T23:54:58.474750Z", "operationType": "EXPORT_ENTITIES" }, "progressEntities": { "workCompleted": "21933027", "workEstimated": "21898182" }, "progressBytes": { "workCompleted": "12421451292", "workEstimated": "9759724245" }, "entityFilter": { "namespaceIds": [ "" ] }, "outputUrlPrefix": "gs://bucket-name" }, "done": true, "response": { "@type": "type.googleapis.com/google.datastore.admin.v1.ExportEntitiesResponse", "outputUrl": "gs://bucket-name/2017-05-25T23:54:39_76544/2017-05-25T23:54:39_76544.overall_export_metadata" } } ] }
Vorgangsstatus prüfen
So zeigen Sie den Status eines lang andauernden Vorgangs an:
Console
Eine Liste der letzten Export- und Importvorgänge finden Sie in der Seite Import/Export der Google Cloud Console.
Rufen Sie in der Google Cloud Console die Seite Datenbanken auf.
Wählen Sie die benötigte Datenbank aus der Liste der Datenbanken aus.
Klicken Sie im Navigationsmenü auf Importieren/Exportieren.
gcloud
Verwenden Sie den Befehl operations describe
, um den Status eines lang andauernden Vorgangs anzuzeigen.
gcloud datastore operations describe operation-name
rest
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: Ihre Projekt-ID
- operation-name: Der Name des Vorgangs
HTTP-Methode und URL:
GET https://datastore.googleapis.com/v1/projects/project-id/operations/operation-name
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
{ "name": "projects/project-id/operations/ASA3ODAwMzQxNjIyChp0bHVhZmVkBxJsYXJ0bmVjc3Utc2Jvai1uaW1kYRQKLRI", "metadata": { "@type": "type.googleapis.com/google.datastore.admin.v1.ExportEntitiesMetadata", "common": { "startTime": "2019-10-08T20:07:28.105236Z", "endTime": "2019-10-08T20:07:36.310653Z", "operationType": "EXPORT_ENTITIES", "state": "SUCCESSFUL" }, "progressEntities": { "workCompleted": "21", "workEstimated": "21" }, "progressBytes": { "workCompleted": "2272", "workEstimated": "2065" }, "entityFilter": {}, "outputUrlPrefix": "gs://bucket-name/2019-10-08T20:07:28_28481" }, "done": true, "response": { "@type": "type.googleapis.com/google.datastore.admin.v1.ExportEntitiesResponse", "outputUrl": "gs://bucket-name/2019-10-08T20:07:28_28481/2019-10-08T20:07:28_28481.overall_export_metadata" } }
Fertigstellungszeit schätzen
Während der Ausführung eines Vorgangs wird im Feld state
der Gesamtstatus des Vorgangs angezeigt.
Eine Anfrage für den Status eines Vorgangs mit langer Ausführungszeit liefert die Messwerte workEstimated
und workCompleted
. Beide Messwerte werden als Anzahl der Byte und als Anzahl der Entitäten zurückgegeben:
workEstimated
weist die geschätzte Gesamtzahl der Byte und Dokumente aus, die ein Vorgang verarbeitet. Im Datastore-Modus wird dieser Messwert möglicherweise ausgelassen, wenn er keine Schätzung vornehmen kann.workCompleted
weist die Anzahl der bisher verarbeiteten Byte und Dokumente aus. Nachdem der Vorgang abgeschlossen ist, zeigt der Wert die Gesamtanzahl der tatsächlich verarbeiteten Byte und Dokumente an, die möglicherweise größer als der Wert vonworkEstimated
ist.
Teilen Sie workCompleted
durch workEstimated
, um eine grobe Schätzung des Fortschritts zu erhalten. Diese Schätzung ist möglicherweise ungenau, da sie von der verzögerten Statistikerfassung abhängt.
Das folgende Beispiel zeigt den Fortschrittsstatus eines Exportvorgangs:
{ "operations": [ { "name": "projects/project-id/operations/ASAyMDAwOTEzBxp0bHVhZmVkBxJsYXJ0bmVjc3Utc2Jvai1uaW1kYRQKKhI", "metadata": { "@type": "type.googleapis.com/google.datastore.admin.v1.ExportEntitiesMetadata", ... "progressEntities": { "workCompleted": "1", "workEstimated": "3" }, "progressBytes": { "workCompleted": "85", "workEstimated": "257" }, ...
Wenn ein Vorgang abgeschlossen ist, enthält die Vorgangsbeschreibung "done":
true
. Der Wert des Feldes state
stellt das Ergebnis des Vorgangs dar. Wenn das Feld done
nicht in der Antwort festgelegt ist, lautet der Wert false
. Keine Abhängigkeit vom Vorhandensein des done
-Werts
für laufende Vorgänge.
Vorgang abbrechen
Console
Einen laufenden Export- oder Importvorgang können Sie im Seite Import/Export der Google Cloud Console.
Rufen Sie in der Google Cloud Console die Seite Datenbanken auf.
Wählen Sie die benötigte Datenbank aus der Liste der Datenbanken aus.
Klicken Sie im Navigationsmenü auf Importieren/Exportieren.
In der Tabelle Aktuelle Importe und Exporte enthalten aktuell ausgeführte Vorgänge die Schaltfläche Abbrechen in der Spalte Abgeschlossen. Klicken Sie auf die Schaltfläche Abbrechen, um den Vorgang zu beenden. Die Schaltfläche ändert sich in eine Abbrechen- und, sobald der Vorgang komplett ist, in eine Storniert-Nachricht.
gcloud
Verwenden Sie den Befehl operations cancel
, um einen laufenden Vorgang zu stoppen:
gcloud datastore operations cancel operation-name
Durch das Abbrechen eines laufenden Vorgangs wird der Vorgang nicht rückgängig gemacht. Bei einem abgebrochenen Exportvorgang werden bereits in Cloud Storage exportierte Dokumente dort beibehalten. Bei einem abgebrochenen Importvorgang werden die bereits an der Datenbank vorgenommenen Aktualisierungen beibehalten. Sie können einen unvollständigen Export nicht importieren.
Vorgang löschen
gcloud
Verwenden Sie den Befehl operations delete
, um einen Vorgang aus der Liste der letzten Vorgänge zu entfernen. Mit diesem Befehl werden keine Exportdateien aus
Cloud Storage
gcloud datastore operations delete operation-name
Abrechnung und Preise für verwaltete Exporte und Importe
Sie müssen die Abrechnung für Ihr Google Cloud-Projekt aktivieren, bevor Sie den verwalteten Export- und Importdienst verwenden können. Export- und Importvorgänge tragen auf folgende Weise zu Ihren Google Cloud-Kosten bei:
- Lese- und Schreibvorgänge für Entitäten, bei Export- und Importvorgängen ausgeführt wurden, werden auf die Kosten von Firestore im Datastore-Modus angerechnet. Für Exportvorgänge ist ein Lesevorgang erforderlich Vorgang pro exportierter Entität. Für Importvorgänge ist ein Schreibvorgang pro Entität importiert.
- In Cloud Storage gespeicherte Ausgabedateien werden auf Ihre in Cloud Storage gespeicherten Daten angerechnet.
Bei Export- oder Importvorgängen Bis zum Abschluss werden alle Google Cloud-Budgetbenachrichtigungen ausgelöst. Die während eines Export- oder Importvorgangs ausgeführten Lese- und Schreibvorgänge nach Abschluss des Vorgangs auf Ihr tägliches Kontingent angewendet.
Preise für Export und Import aufrufen
Bei Export- und Importvorgängen wird das goog-firestoremanaged:exportimport
-Label auf in Rechnung gestellte Vorgänge angewendet. Auf der Seite der Cloud Billing-Berichte können Sie über dieses Label Kosten für Import- und Exportvorgänge aufrufen:
Unterschiede zu Datastore Admin-Sicherungen
Wenn Sie zuvor die Datastore Admin-Konsole für Sicherungen verwendet haben, sollten Sie die folgenden Unterschiede beachten:
Exporte, die über einen verwalteten Export erstellt wurden, werden nicht in der Datastore Admin-Konsole. Verwaltete Exporte und Importe Dienst, der keine Daten für die Sicherung und Wiederherstellung von App Engine freigibt , das über die Google Cloud Console verwaltet wird.
Der verwaltete Export- und Importdienst unterstützt nicht dieselben Metadaten wie die Datastore Admin-Sicherung und speichert den Fortschrittsstatus nicht in Ihrer Datenbank. Weitere Informationen zum Prüfen des Fortschritts von Export- und Importvorgängen finden Sie unter Umgang mit lang andauernden Vorgängen
Sie können keine Dienstlogs von verwalteten Export- und Importvorgängen abrufen.
Der verwaltete Importdienst ist abwärtskompatibel mit Datastore Administrator-Sicherungsdateien. Sie können eine Datastore Admin-Sicherungsdatei mithilfe des verwalteten Importdiensts importieren. Die Ausgabe eines verwalteten Exports kann jedoch nicht mithilfe der Datastore Admin-Konsole importiert werden.
In BigQuery importieren
Informationen zum Importieren von Daten aus einem verwalteten Export in BigQuery finden Sie unter Daten des Datastore-Exportdienstes laden.
Daten, die ohne Angabe eines Entitätsfilters exportiert wurden, können nicht in BigQuery geladen werden. Wenn Sie Daten in BigQuery importieren möchten, muss die Exportanfrage im Entitätsfilter einen oder mehrere Artnamen enthalten.
BigQuery-Spaltenlimit
In BigQuery gilt ein Limit von 10.000 Spalten pro Tabelle. Exportvorgänge generieren ein BigQuery-Tabellenschema für jede Art. In diesem Schema wird jedes eindeutige Attribut innerhalb der Entitäten einer Art zu einer Schemaspalte.
Wenn das BigQuery-Schema einer Art 10.000 Spalten überschreitet, versucht der Exportvorgang, unterhalb des Spaltenlimits zu bleiben. Dafür werden eingebettete Entitäten als Blobs behandelt. Wenn durch diese Konvertierung die Anzahl der Spalten im Schema unter 10.000 bleibt, können Sie die Daten in BigQuery laden, aber Sie können die Attribute innerhalb eingebetteter Entitäten nicht abfragen. Wenn die Anzahl der Spalten 10.000 weiterhin überschreitet, generiert der Exportvorgang kein BigQuery-Schema für die Art und Sie können die Daten nicht in BigQuery laden.
Migration des Dienst-Agents
Firestore verwendet einen Firestore-Dienst-Agent zum Autorisieren des Imports und Exportvorgänge ausführen, anstatt das App Engine-Dienstkonto zu verwenden. Für den Dienst-Agent und das Dienstkonto gelten die folgenden Namenskonventionen:
- Firestore-Dienst-Agent
service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com
Firestore hat zuvor den App Engine-Standarddienst verwendet anstelle des Firestore-Dienst-Agents. Wenn Ihre Datenbank weiterhin das App Engine-Dienstkonto für den Import oder Export von Daten verwendet, empfehlen wir Ihnen, der Anleitung in diesem Abschnitt zu folgen, den Firestore-Dienst-Agent zu verwenden.
- App Engine-Dienstkonto
PROJECT_ID@appspot.gserviceaccount.com
Der Firestore-Dienst-Agent ist vorzuziehen, da er spezifisch ist. zu Firestore. Das App Engine-Dienstkonto ist freigegeben von mehreren Diensten.
Autorisierungskonto ansehen
Sie können sehen, über welches Konto die Import- und Exportvorgänge autorisiert werden Anfragen von der Seite Import/Export in der Google Cloud Console. Sie können auch Prüfen Sie, ob Ihre Datenbank bereits Firestore verwendet Dienst-Agent.
-
Rufen Sie in der Google Cloud Console die Seite Datenbanken auf.
- Wählen Sie die benötigte Datenbank aus der Liste der Datenbanken aus.
-
Klicken Sie im Navigationsmenü auf Importieren/Exportieren.
- Sehen Sie sich das Autorisierungskonto neben dem Import-/Exportjobs ausführen als Label.
Wenn Ihr Projekt den Firestore-Dienst-Agent nicht verwendet, zum Firestore-Dienst-Agent mit einer der folgenden Methoden diese Techniken einsetzen:
- Projekt durch Überprüfen und Aktualisieren der Cloud Storage-Bucket-Berechtigungen migrieren (empfohlen)
- Fügen Sie eine organisationsweite Richtlinieneinschränkung hinzu, die sich auf alle Projekte innerhalb für das Unternehmen.
Die erste dieser Techniken ist zu bevorzugen, da sie den Umfang der auf ein einzelnes Projekt im Datastore-Modus. Die zweite Technik ist nicht bevorzugt, da der vorhandene Cloud Storage-Bucket nicht migriert wird Berechtigungen. Es bietet jedoch Sicherheitscompliance im Unternehmen.
Migrieren Sie, indem Sie Cloud Storage-Bucket-Berechtigungen prüfen und aktualisieren
Der Migrationsprozess umfasst zwei Schritte:
- Aktualisieren Sie die Cloud Storage-Bucket-Berechtigungen. Im folgenden Abschnitt finden Sie Details.
- Bestätigen Sie die Migration zum Firestore-Dienst-Agent.
Bucket-Berechtigungen des Dienst-Agents
Für alle Export- oder Importvorgänge, die einen Cloud Storage-Bucket in anderen Projekt gibt, müssen Sie dem Firestore-Dienst-Agent Berechtigungen für diesen Bucket. Zum Beispiel Vorgänge, bei denen Daten in eine andere Projekt auf einen Bucket in diesem anderen Projekt zugreifen müssen. Andernfalls werden diese Vorgänge schlagen nach der Migration zum Firestore-Dienst fehl .
Für Import- und Export-Workflows, die im selben Projekt bleiben, ist kein Änderungen an den Berechtigungen. Der Firestore-Dienst-Agent hat Zugriff Buckets im selben Projekt.
Aktualisieren Sie die Berechtigungen für Cloud Storage-Buckets aus anderen Projekten, um
Zugriff auf die
service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com
Dienst-Agent. Gewähren Sie dem Dienst-Agent die Rolle Firestore Service Agent
.
Die Rolle Firestore Service Agent
gewährt Lese- und Schreibberechtigungen für ein
Cloud Storage-Bucket. Wenn Sie nur Lese- oder Nur-Schreibzugriff gewähren müssen
Berechtigungen, verwenden Sie
benutzerdefinierte Rolle.
Der im folgenden Abschnitt beschriebene Migrationsprozess hilft Ihnen, Cloud Storage Buckets, die möglicherweise Aktualisierungen von Berechtigungen erfordern.
Projekt zum Firestore-Dienst-Agent migrieren
Führen Sie die folgenden Schritte aus, um vom App Engine-Dienstkonto zu migrieren den Firestore-Dienst-Agent. Nach Abschluss der Migration kann sie nicht mehr rückgängig gemacht.
-
Rufen Sie in der Google Cloud Console die Seite Datenbanken auf.
- Wählen Sie die benötigte Datenbank aus der Liste der Datenbanken aus.
-
Klicken Sie im Navigationsmenü auf Importieren/Exportieren.
-
Wenn Ihr Projekt noch nicht zum Firestore-Dienst migriert wurde Agent enthält, wird ein Banner mit einer Beschreibung der Migration und die Schaltfläche Bucket-Status prüfen. Im nächsten Schritt identifizieren Sie mögliche Berechtigungsfehler beheben.
Klicken Sie auf Bucket-Status prüfen.
Es wird ein Menü mit der Option zum Abschließen der Migration angezeigt. Außerdem wird ein Liste der Cloud Storage-Buckets. Es kann einige Minuten dauern, um den Ladevorgang der Liste abzuschließen.
Diese Liste enthält Buckets, die in Import- und Exportvorgängen verwendet werden, aber derzeit keine Lese- und Schreibberechtigungen für den Dienst-Agent im Datastore-Modus.
- Notieren Sie sich den Prinzipalnamen des Datastore-Modus Ihres Projekts Dienst-Agent. Der Name des Dienst-Agents wird unter dem Label Dienst-Agent, dem Zugriff gewährt werden soll
-
Für jede Gruppe in der Liste für zukünftige Import- oder Exportvorgänge verwenden, führen Sie folgende Schritte aus: Schritte:
-
Klicken Sie in der Tabellenzeile dieses Buckets auf Korrigieren. Dadurch wird die Berechtigungsseite dieses Buckets in einem neuen Tab geöffnet.
- Klicken Sie auf Hinzufügen.
- Geben Sie in das Feld Neue Hauptkonten den Namen Ihres Firestore-Dienst-Agent
- Wähle im Feld Rolle auswählen die Option Dienst-Agents > Firestore-Dienst-Agent
- Klicken Sie auf Speichern.
- Kehren Sie zum Tab mit der Import/Export-Seite im Datastore-Modus zurück.
- Wiederholen Sie diese Schritte für andere Buckets in der Liste. Stellen Sie sicher, dass Sie alle Seiten der Liste enthält.
-
-
Klicken Sie auf Zum Firestore-Dienst-Agent migrieren. Wenn Sie noch Buckets mit fehlgeschlagenen Berechtigungsprüfungen haben, müssen Sie die Migration bestätigen, indem Sie auf Migrieren klicken.
Sie werden über eine Benachrichtigung informiert, wenn die Migration abgeschlossen ist. Migration nicht möglich rückgängig gemacht.
Status der Migration abrufen
So überprüfen Sie den Migrationsstatus Ihres Projekts:
-
Rufen Sie in der Google Cloud Console die Seite Datenbanken auf.
- Wählen Sie die benötigte Datenbank aus der Liste der Datenbanken aus.
-
Klicken Sie im Navigationsmenü auf Importieren/Exportieren.
-
Suchen Sie nach dem Hauptkonto neben dem Label Import-/Exportjobs als ausführen als.
Wenn das Hauptkonto
service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com
ist, ist Ihr Projekt bereits zu Firestore migriert Dienst-Agent. Die Migration kann nicht rückgängig gemacht werden.Wenn das Projekt nicht migriert wurde, wird oben auf der Seite ein Banner angezeigt. durch die Schaltfläche Bucket-Status prüfen. Weitere Informationen finden Sie unter Zum Firestore-Dienst-Agent migrieren um die Migration abzuschließen.
Organisationsweite Richtlinieneinschränkung hinzufügen
-
Legen Sie die folgende Einschränkung in der Richtlinie Ihrer Organisation fest:
Firestore-Dienst-Agent für Import/Export erforderlich (
firestore.requireP4SAforImportExport
).Für diese Einschränkung sind Import- und Exportvorgänge erforderlich, um die Methode Firestore-Dienst-Agent zum Autorisieren von Anfragen. Informationen zum Festlegen dieser Einschränkung finden Sie unter <ph type="x-smartling-placeholder"></ph> Organisationsrichtlinien erstellen und verwalten
Durch Anwenden dieser Einschränkung der Organisationsrichtlinie wird der Parameter Cloud Storage-Bucket-Berechtigungen für die Firestore-Dienst-Agent
Wenn durch die Einschränkung Berechtigungsfehler für Import- oder Export-Workflows entstehen, können Sie es deaktivieren, um wieder das Standarddienstkonto zu verwenden. Nach der Prüfung und Aktualisierung des Cloud Storage-Bucket Berechtigungen haben, können Sie die Einschränkung wieder aktivieren.