Metadaten aus einem Dienst exportieren

Ein Export nimmt Metadaten, die in einem Dataproc Metastore-Dienst gespeichert sind, und gibt entweder einen Ordner mit Avro-Dateien oder eine MySQL-Dumpdatei in einem Cloud Storage-Ordner zurück. Für den Avro-Export erstellt Dataproc Metastore eine <table-name>.avro-Datei für jede Tabelle. Avro-basierte Exporte werden für Hive-Versionen 2.3.6 und 3.1.2 unterstützt.

Auf dieser Seite wird erläutert, wie Sie Metadaten aus einem vorhandenen Dataproc Metastore-Dienst exportieren.

Hinweis

  • Für die meisten gcloud metastore-Befehle ist ein Speicherort erforderlich. Sie können den Speicherort mit dem Flag --location oder durch Festlegen des Standardspeicherorts angeben.

Zugriffssteuerung

  • Zum Exportieren von Metadaten müssen Sie eine IAM-Rolle mit der IAM-Berechtigung metastore.services.export anfordern. Die Dataproc Metastore-spezifischen Rollen roles/metastore.admin, roles/metastore.editor und roles/metastore.metadataOperator enthalten die Exportberechtigung.

  • Mithilfe der Legacy-Rollen roles/owner und roles/editor können Sie Nutzern oder Gruppen eine Exportberechtigung erteilen.

  • Der Dataproc Metastore-Dienst-Agent (service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com) muss die Berechtigung storage.objects.create für den Cloud Storage-Ziel-Bucket für den Export haben.

    • Der Nutzer, der den Export erstellt, muss ebenfalls die Berechtigung storage.objects.create für den Bucket haben.
  • Wenn Sie VPC Service Controls verwenden, können Sie Daten nur in einen Cloud Storage-Bucket exportieren, der sich im selben Dienstperimeter wie der Dataproc Metastore-Dienst befindet.

Weitere Informationen finden Sie unter Dataproc Metastore-IAM und -Zugriffssteuerung.

Metadaten aus einem Dienst exportieren

Wählen Sie zum Exportieren von Metadaten aus einem Dienst das Exportziel auf der Seite „Dienstdetails“ in einem lokalen Browser aus. Verwenden Sie dazu das gcloud-Tool oder geben Sie eine Dataproc Metastore API-Methode services.exportMetadata aus.

Während der Export ausgeführt wird, können keine Änderungen an dem Dienst vorgenommen werden. Sie können den Dienst jedoch weiterhin verwenden, während ein Export vorgenommen wird.

Führen Sie die folgenden Schritte aus, um Metadaten aus einem Dataproc Metastore-Dienst zu exportieren:

Console

  1. Öffnen Sie in der Cloud Console die Dataproc Metastore-Seite:

    Dataproc Metastore in der Cloud Console öffnen

  2. Klicken Sie auf der Seite Dataproc Metastore auf den Namen des Dienstes, von dem Sie Metadaten exportieren möchten. Die Seite Servicedetails wird geöffnet.

    Seite „Dienstdetails“
  3. Klicken Sie oben auf der Seite auf die Schaltfläche Exportieren. Die Seite Metadaten exportieren wird geöffnet.

  4. Wählen Sie das Ziel aus.

  5. Suchen und wählen Sie den Cloud Storage-URI aus, unter dem der Export gespeichert werden soll.

  6. Klicken Sie auf die Schaltfläche Senden, um den Export zu starten.

  7. Vergewissern Sie sich, dass Sie auf die Seite Dienstdetails zurückgekehrt sind und der Export unter Exportverlauf auf dem Tab Import/Export angezeigt wird.

gcloud

  1. Führen Sie den folgenden Befehl gcloud metastore services export gcs aus, um Metadaten aus einem Dienst zu exportieren:

    gcloud metastore services export gcs SERVICE  \
        --location=LOCATION \
        --destination-folder=gs://bucket-name/path/to/folder \
        --dump-type=DUMP_TYPE
    

    Dabei gilt:

    • SERVICE: Der Name des Dienstes.
    • LOCATION: Bezieht sich auf eine Google Cloud-Region.
    • bucket-name/path/to/folder: verweist auf den Cloud Storage-Zielordner.
    • DUMP_TYPE: Der Typ des Datenbank-Dumps. Die Standardeinstellung ist mysql.
  2. Prüfen Sie, ob der Export erfolgreich war.

REST

Folgen Sie der API-Anleitung zum Exportieren von Metadaten in einen Dienst mit dem APIs Explorer.

Wenn der Export abgeschlossen ist, geht der Dienst automatisch in den aktiven Zustand über, unabhängig davon, ob er erfolgreich war oder nicht.

Den Exportverlauf eines Dienstes finden Sie in der Cloud Console auf der Seite Dienstdetails im Tab Import/Export.

Vorsichtsmaßnahmen exportieren

  • Avro-basierte Exporte werden für Hive-Versionen 2.3.6 und 3.1.2 unterstützt.

  • Auf der Benutzeroberfläche ist ein Verlauf der früheren Exporte verfügbar. Wenn Sie den Dienst selbst löschen, wird der gesamte Exportverlauf für diesen Dienst gelöscht.

Häufige Fehler

  • Der Dataproc Metastore-Dienst-Agent (service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com) hat die Berechtigung storage.objects.create für den Cloud Storage-Bucket, der für die Avro- oder MySQL-Dumpdateien verwendet wird.

    • Der Nutzer, der den Export erstellt, hat nicht die Berechtigung storage.objects.create für den Bucket.
  • Die Datenbankdatei ist zu groß und braucht mehr als eine Stunde, um den Exportvorgang abzuschließen.

Nächste Schritte