Selbstverwalteten MySQL-Metastore zu Dataproc Metastore migrieren
Auf dieser Seite erfahren Sie, wie Sie Ihren externen selbstverwalteten MySQL-Metastore zu Dataproc Metastore migrieren, indem Sie eine MySQL-Dumpdatei erstellen und die Metadaten in einen vorhandenen Dataproc Metastore-Dienst importieren.
Hinweise
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Dataproc Metastore API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen eines Dataproc Metastore und zum Importieren eines MySQL-Metastore benötigen:
-
So erstellen Sie einen Dienst und importieren Metadaten:
-
Dataproc Metastore-Bearbeiter (
roles/metastore.editor
) im Projekt -
Dataproc Metastore-Administrator (
roles/metastore.admin
) für das Projekt.
-
Dataproc Metastore-Bearbeiter (
-
So verwenden Sie das Cloud Storage-Objekt (SQL-Dumpdatei) für den Import:
-
Storage-Objekt-Betrachter (
roles/storage.objectViewer
) für den Dataproc Metastore-Dienst-Agent. Beispiel:service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com
-
Storage-Objekt-Betrachter (
roles/storage.objectViewer
) für das Nutzerkonto.
-
Storage-Objekt-Betrachter (
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Erstellen eines Dataproc Metastore und zum Importieren eines MySQL-Metastore erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind zum Erstellen eines Dataproc Metastore und zum Importieren eines MySQL-Metastore erforderlich:
-
So erstellen Sie einen Dienst:
metastore.services.create
für das Projekt. -
So importieren Sie Metadaten:
metastore.imports.create
für das Projekt. -
So verwenden Sie das Cloud Storage-Objekt (SQL-Dumpdatei) für den Import:
-
storage.objects.get
auf dem Dataproc Metastore-Dienst-Agent. z. B.service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com
. -
storage.objects.get
für das Nutzerkonto.
-
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 unter Dataproc-Zugriff mit IAM verwalten.Dataproc Metastore-Dienst erstellen
In der folgenden Anleitung wird gezeigt, wie Sie einen Dataproc Metastore-Dienst erstellen, in den Sie Ihre SQL-Dumpdatei migrieren können.
Konsole
Öffnen Sie in der Google Cloud Console die Seite Dienst erstellen:
Dataproc Metastore Geben Sie im Feld Name des Dienstkontos
example-service
ein.Wählen Sie den Speicherort der Daten aus. Informationen zur Auswahl einer Region finden Sie unter Cloud-Standorte.
Übernehmen Sie für die anderen Optionen der Dienstkonfiguration die angegebenen Standardeinstellungen.
Klicken Sie auf die Schaltfläche Senden, um den Dienst zu erstellen und zu starten.
Der neue Dienst wird in der Liste „Dienst“ angezeigt.
gcloud
Führen Sie den folgenden Befehl gcloud metastore services create
aus, um einen Dienst zu erstellen:
gcloud metastore services create example-service \ --location=LOCATION
Ersetzen Sie LOCATION
durch die Compute Engine-Region, in der Sie den Dienst erstellen möchten. Dataproc Metastore muss in der Region verfügbar sein.
REST
Folgen Sie der API-Anleitung zum Erstellen eines Dienstes mit dem APIs Explorer.
Migration vorbereiten
Sie müssen jetzt die in Ihrer Hive-Metaspeicherdatenbank gespeicherten Metadaten für den Import vorbereiten, indem Sie eine MySQL-Dumpdatei erstellen und in einen Cloud Storage-Bucket einfügen.
Eine Anleitung zur Vorbereitung auf die Migration finden Sie unter Importdateien vor dem Import vorbereiten.
Metadaten importieren
Nachdem Sie die Dumpdatei vorbereitet haben, importieren Sie sie in Ihren Dataproc Metastore-Dienst.
Unter Dateien in Dataproc Metastore importieren finden Sie eine Anleitung zum Importieren von Metadaten in Ihren example-service
-Dienst.
Dataproc-Cluster erstellen und anhängen
Nachdem Sie die Metadaten in den Dataproc Metastore-Dienst example-service
importiert haben, erstellen Sie und hängen Sie einen Dataproc-Cluster an, der den Dienst als Hive-Metastore verwendet.
Bereinigen
Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud -Konto die auf dieser Seite verwendeten Ressourcen in Rechnung gestellt werden:
- In the Google Cloud console, go to the Manage resources page.
- If the project that you plan to delete is attached to an organization, expand the Organization list in the Name column.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Alternativ können Sie die Ressourcen löschen, die in dieser Anleitung verwendet werden:
Löschen Sie den Dataproc Metastore-Dienst.
Konsole
Öffnen Sie in der Google Cloud Console- die Seite „Dataproc Metastore“:
Klicken Sie links neben dem Dienstnamen auf das Kästchen für
example-service
.Klicken Sie oben auf der Seite Dataproc Metastore auf Löschen, um den Dienst zu löschen.
Klicken Sie im Dialogfeld auf Löschen, um den Löschvorgang zu bestätigen.
Ihr Dienst wird nicht mehr in der Dienstliste angezeigt.
gcloud
Führen Sie den folgenden Befehl
gcloud metastore services delete
aus, um einen Dienst zu löschen:gcloud metastore services delete example-service \ --location=LOCATION
Ersetzen Sie
LOCATION
durch die Compute Engine-Region, in der Sie den Dienst erstellt haben.REST
Folgen Sie der API-Anleitung, um einen Dienst mithilfe des APIs Explorers zu löschen.
Alle Löschvorgänge werden sofort ausgeführt.
Löschen Sie den Cloud Storage-Bucket für den Dataproc Metastore-Dienst.