Auf dieser Seite wird erläutert, wie Sie Metadaten in einen Dataproc Metastore importieren Service.
Mit der Funktion zum Importieren von Metadaten können Sie Dataproc Metastore-Dienst mit Metadaten, die in einem portablen Gerät gespeichert sind Speicherformat.
Diese portablen Metadaten werden in der Regel aus einem anderen Dataproc Metastore-Dienst oder aus einem selbstverwalteten Hive Metastore (HMS) stammen.
Metadaten importieren
Sie können die folgenden Dateiformate importieren in Dataproc Metastore:
- Eine Reihe von Avro-Dateien, die in einem Ordner gespeichert sind.
- Eine einzelne MySQL-Dumpdatei, die in einem Cloud Storage-Ordner gespeichert ist.
Die zu importierenden MySQL- oder Avro-Dateien müssen aus einer relationalen Datenbank.
Wenn Ihre Dateien in einem anderen Format vorliegen, z. B. PostgreSQL, müssen Sie sie konvertieren in das Avro- oder MySQL-Format umwandeln. Nach der Umwandlung können Sie sie in Dataproc Metastore
Avro
Avro-basierte Importe werden nur für die Hive-Versionen 2.3.6 und 3.1.2 unterstützt. Wann?
Avro-Dateien importiert, erwartet Dataproc Metastore
<table-name>.avro
-Dateien für jede Tabelle in Ihrer Datenbank.
Zum Importieren von Avro-Dateien kann der Dataproc Metastore-Dienst MySQL- oder Spanner-Datenbanktyp.
MySQL
MySQL-basierte Importe werden für alle Hive-Versionen unterstützt. Beim Importieren von MySQL erwartet Dataproc Metastore eine einzelne SQL-Datei, alle Tabelleninformationen. MySQL-Dumps aus einem Dataproc-Cluster mit nativem SQL sind ebenfalls unterstützt.
Zum Importieren von MySQL-Dateien muss der Dataproc Metastore-Dienst Folgendes verwenden: den MySQL-Datenbanktyp. MySQL-Datenbanktyp wird vom Spanner-Datenbanktyp nicht unterstützt Datenimport und -import.
Hinweise zum Import
Beim Importieren werden alle vorhandenen Metadaten überschrieben, die in einem Dataproc Metastore-Dienst
Mit der Funktion zum Importieren von Metadaten werden nur Metadaten importiert. Daten, die von Apache Hive in internen Tabellen wird beim Import nicht repliziert.
Beim Importieren werden Datenbankinhalte nicht umgewandelt und die Datei wird nicht verarbeitet Migration. Wenn Sie Ihre Daten an einen anderen Speicherort verschieben, müssen Sie die Speicherorte und das Schema der Tabellendaten Dataproc Metastore-Dienst
Beim Importieren wird detaillierte IAM nicht wiederhergestellt oder ersetzt Richtlinien.
Wenn Sie VPC Service Controls nutzen, können Sie nur Daten aus Cloud Storage-Buckets importieren, die sich im selben Dienstperimeter wie der Dataproc Metastore-Dienst befinden.
Hinweise
- Aktivieren Sie Dataproc Metastore in Ihrem Projekt.
- Informieren Sie sich über die Netzwerkanforderungen, die für Ihr Projekt spezifisch sind.
- Erstellen Sie einen Dataproc Metastore-Dienst.
Erforderliche Rollen
Um die Berechtigungen zu erhalten, die Sie zum Importieren von Metadaten in Dataproc Metastore benötigen, bitten Sie Ihren Administrator, Ihnen folgenden IAM-Rollen:
-
So importieren Sie Metadaten:
<ph type="x-smartling-placeholder">
- </ph>
-
Dataproc Metastore-Bearbeiter (
roles/metastore.editor
) im Metadatendienst. -
Dataproc Metastore-Administrator (
roles/metastore.admin
) für das Projekt.
-
Dataproc Metastore-Bearbeiter (
-
So verwenden Sie für MySQL das Cloud Storage-Objekt (SQL-Dumpdatei) für den Import:
Ihrem Nutzerkonto und dem Dataproc Metastore-Dienst-Agent die Rolle „Storage Object Viewer“ zuweisen (
roles/storage.objectViewer
) für den Cloud Storage-Bucket, der den zu importierenden Metadaten-Dump enthält. -
So verwenden Sie bei Avro den Cloud Storage-Bucket für den Import:
Ihrem Nutzerkonto und dem Dataproc Metastore-Dienst-Agent die Rolle „Storage Object Viewer“ zuweisen (
roles/storage.objectViewer
) für den Cloud Storage-Bucket, der den zu importierenden Metadaten-Dump enthält.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Importieren von Metadaten in Dataproc Metastore erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um Metadaten in Dataproc Metastore zu importieren:
-
So importieren Sie Metadaten:
metastore.imports.create
im Metastore-Dienst. -
Gewähren Sie Ihrem Nutzerkonto und dem Dataproc Metastore-Dienst-Agent, um für MySQL das Cloud Storage-Objekt (SQL-Dumpdatei) für den Import zu verwenden:
storage.objects.get
für den Cloud Storage-Bucket, der den zu importierenden Metadaten-Dump enthält. -
Wenn Sie in Avro den Cloud Storage-Bucket für den Import verwenden möchten, müssen Sie Ihrem Nutzerkonto und dem Dataproc Metastore-Dienst-Agent Folgendes zuweisen:
storage.objects.get
für den Cloud Storage-Bucket, der den zu importierenden Metadaten-Dump enthält.
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Weitere Informationen zu bestimmten Dataproc Metastore-Rollen und -Berechtigungen finden Sie in der Übersicht zu Dataproc Metastore IAM.Metadaten importieren
Der Importvorgang besteht aus zwei Schritten. Zuerst bereiten Sie die Importdateien vor und dann in Dataproc Metastore importieren.
Wenn Sie einen Import starten, führt Dataproc Metastore Validierung des Metadatenschemas. Mit dieser Validierung werden die Tabellen im SQL-Dump geprüft und die Dateinamen für Avro. Wenn eine Tabelle fehlt, schlägt der Import mit einer erhalten Sie eine Fehlermeldung, die die fehlende Tabelle beschreibt.
Um die Kompatibilität von Hive-Metadaten vor einem Import zu prüfen, können Sie die Methode Dataproc Metastore Toolkit.
Importdateien vor dem Import vorbereiten
Bevor Sie Ihre Dateien in Dataproc Metastore importieren können, müssen Ihre Metadaten-Dumpdateien nach Cloud Storage kopieren, z. B. Artefakte mit Cloud Storage Bucket
Dateien in Cloud Storage verschieben
Erstellen Sie einen Dump der externen Datenbank, in die Sie importieren möchten Dataproc Metastore
Eine Anleitung zum Erstellen eines Datenbank-Dumps finden Sie auf den folgenden Seiten:
Laden Sie die Dateien in Cloud Storage hoch.
Notieren Sie sich den Cloud Storage-Pfad, in den Sie Ihre Dateien hochladen. müssen Sie sie später zum Durchführen des Imports verwenden.
Wenn Sie MySQL-Dateien importieren, laden Sie die SQL-Datei in Cloud Storage-Bucket:
Wenn Sie Avro-Dateien importieren, laden Sie die Dateien in einen Cloud Storage-Ordner.
- Der Avro-Import sollte für jede Hive-Tabelle eine Avro-Datei enthalten, selbst wenn die Tabelle leer ist.
- Die Avro-Dateinamen müssen das Format
<table-name>.avro
haben. Der<table-name>
muss in Großbuchstaben. Beispiel:AUX_TABLE.avro
Dateien in Dataproc Metastore importieren
Überprüfen Sie vor dem Importieren von Metadaten die Importfunktion Überlegungen.
Während ein Import ausgeführt wird, können Sie einen Dataproc Metastore nicht aktualisieren Dienst, z. B. das Ändern von Konfigurationseinstellungen. Sie können jedoch weiterhin für den normalen Betrieb, z. B. für den Zugriff auf Metadaten angehängten Dataproc- oder selbstverwalteten Cluster.
Console
Öffnen Sie in der Google Cloud Console die Seite Dataproc Metastore:
Klicken Sie auf der Seite Dataproc Metastore auf den Namen des Dienstes. in die Sie Metadaten importieren möchten.
Die Seite Dienstdetails wird geöffnet.
<ph type="x-smartling-placeholder">Klicken Sie in der Navigationsleiste auf Importieren.
Das Dialogfeld Importieren wird geöffnet.
Geben Sie den Importnamen ein.
Wählen Sie im Abschnitt Ziel entweder MySQL oder Avro aus.
Klicken Sie im Feld Ziel-URI auf Durchsuchen und wählen Sie den gewünschten Cloud Storage-URI aus. in das die Dateien importiert werden sollen.
Sie können den Bucket-Standort auch manuell in das dafür vorgesehene Textfeld eingeben. Verwenden Sie das folgende Format:
bucket/object
oderbucket/folder/object
.Optional: Geben Sie eine Beschreibung des Imports ein.
Sie können die Beschreibung auf der Seite Dienstdetails bearbeiten.
Klicken Sie auf Importieren, um den Dienst zu aktualisieren.
Nach Abschluss des Imports wird er auf der Seite Dienstdetails auf dem Tab Import/Export in einer Tabelle angezeigt.
gcloud-CLI
Führen Sie den folgenden
gcloud metastore services import gcs
aus, um Metadaten zu importieren Befehl:gcloud metastore services import gcs SERVICE_ID \ --location=LOCATION \ --import-id=IMPORT_ID \ --description=DESCRIPTION \ --dump-type=DUMP_TYPE \ --database-dump=DATABASE_DUMP
Ersetzen Sie Folgendes:
SERVICE_ID
: Die ID oder der vollständig qualifizierte Name Ihres Dataproc Metastore-Dienstes.LOCATION
: Die Google Cloud-Region, in der sich der Dataproc Metastore-Dienst befindet.IMPORT_ID
: eine ID oder ein vollständig qualifizierter Name für den Metadatenimport. Beispiel:import1
.DESCRIPTION
(optional): Eine Beschreibung des Imports. Sie können dies später mitgcloud metastore services imports update IMPORT
bearbeiten.DUMP_TYPE
: Typ der externen Datenbank, die Sie importieren Zulässige Werte sind „mysql
“ und „avro
“. Der Standardwert istmysql
.DATABASE_DUMP
: der Pfad zu Cloud Storage, der den Datenbankdateien. Dieser Pfad muss mitgs://
beginnen. Geben Sie für Avro den Pfad zu dem Ordner an, in dem die Avro-Dateien gespeichert sind (dem Cloud Storage-Ordner). Geben Sie für MySQL den Pfad zur MySQL-Datei (dem Cloud Storage-Objekt) an.
Prüfen Sie, ob der Import erfolgreich war.
REST
Folgen Sie der API-Anleitung zum Importieren von Metadaten in einen Dienst. mit APIs Explorer.
Mit der API können Sie Importe erstellen, auflisten, beschreiben und aktualisieren. können Sie Importe nicht löschen. Beim Löschen eines Dataproc Metastore-Dienstes werden jedoch alle gespeicherten verschachtelten Datenimport und -import.
Wenn der Import erfolgreich ist, kehrt Dataproc Metastore automatisch in den aktiven Status zurück. Wenn der Import fehlschlägt, wird von Dataproc Metastore ein Rollback auf den vorherigen fehlerfreien Zustand durchgeführt.
Importverlauf ansehen
So rufen Sie den Importverlauf eines Dataproc Metastore-Dienstes in der Google Cloud Console auf:
- Öffnen Sie in der Google Cloud Console die Seite Dataproc Metastore.
Klicken Sie in der Navigationsleiste auf Importieren/Exportieren.
Der Importverlauf wird in der Tabelle Importverlauf angezeigt.
Im Verlauf werden die letzten 25 Importe angezeigt.
Durch das Löschen eines Dataproc Metastore-Dienstes wird auch der gesamte zugehörige Importverlauf gelöscht.
Häufige Probleme beheben
Zu den häufigsten Problemen gehören:
- Der Import schlägt fehl, da die Hive-Versionen nicht übereinstimmen.
- Der Dienst-Agent oder das Nutzerkonto hat nicht die erforderlichen Berechtigungen.
- Der Job schlägt fehl, weil die Datenbankdatei zu groß ist.
Weitere Informationen zur Behebung häufiger Probleme finden Sie unter Fehlerszenarien im Import und Export.