Dataproc Metastore-Dienst bereitstellen
Auf dieser Seite wird beschrieben, wie Sie einen Dataproc Metastore-Dienst erstellen und über einen Dataproc-Cluster eine Verbindung zu ihm herstellen. Anschließend stellen Sie eine SSH-Verbindung zum Cluster her, starten eine Instanz von Apache Hive und führen einige grundlegende Abfragen aus.
Dataproc Metastore bietet Ihnen einen vollständig kompatiblen Hive Metastore (HMS), der im Open-Source-Bereich von Big Data zur Verwaltung technischer Metadaten etabliert ist. Dieser Dienst hilft Ihnen bei der Verwaltung der Metadaten Ihrer Data Lakes und ermöglicht die Interoperabilität zwischen den verschiedenen von Ihnen verwendeten Datenverarbeitungstools.
Klicken Sie auf Anleitung, um die Schritt-für-Schritt-Anleitung für diese Aufgabe direkt in der Google Cloud Console auszuführen:
Hinweise
- Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.
-
Dataproc Metastore, Dataproc APIs aktivieren.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.
-
Dataproc Metastore, Dataproc APIs aktivieren.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zu gewähren, um die Berechtigungen zu erhalten, die Sie zum Erstellen eines Dataproc Metastores und eines Dataproc-Clusters benötigen:
-
So gewähren Sie uneingeschränkten Zugriff auf alle Dataproc Metastore-Ressourcen, einschließlich der Festlegung von IAM-Berechtigungen:
(
roles/metastore.admin
) für das Nutzer- oder Dienstkonto -
So gewähren Sie die vollständige Kontrolle über Dataproc Metastore-Ressourcen:
Dataproc Metastore Editor (
roles/metastore.editor
) für das Nutzer- oder Dienstkonto -
So erstellen Sie einen Dataproc-Cluster:
(
roles/dataproc.worker
) für das Dienstkonto
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.
Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Erstellen eines Dataproc Metastores und eines Dataproc-Clusters erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um einen Dataproc Metastore und einen Dataproc-Cluster zu erstellen:
-
So erstellen Sie einen Dataproc Metastore-Dienst:
metastore.services.create
für das Nutzer- oder Dienstkonto -
So erstellen Sie einen Dataproc-Cluster:
Dataproc worker (
für das Dienstkontoroles/dataproc.worker
)
Möglicherweise können Sie 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 über Dataproc Metastore-IAM.Dataproc Metastore-Dienst erstellen
In der folgenden Anleitung erfahren Sie, wie Sie einen Basis-Dataproc Metastore-Dienst mit den angegebenen Standardeinstellungen erstellen.
Console
Rufen Sie in der Google Cloud Console die Seite Dataproc Metastore auf.
Klicken Sie im Navigationsmenü auf + Erstellen.
Das Dialogfeld Metastore-Dienst erstellen wird geöffnet.
Wählen Sie Dataproc Metastore 2 aus.
Geben Sie im Feld Name des Dienstkontos
example-service
ein.Wählen Sie im Feld Speicherort der Daten die Option
us-central1
aus.Verwenden Sie für die übrigen Dienstkonfigurationsoptionen die bereitgestellten Standardwerte.
Klicken Sie auf Senden, um den Dienst zu erstellen und zu starten.
Der neue Metastore-Dienst wird auf der Seite Dataproc Metastore angezeigt. Der Status lautet Wird erstellt, bis der Dienst einsatzbereit ist. Wenn sie fertig ist, ändert sich der Status in Aktiv. Die Bereitstellung des Dienstes kann einige Minuten dauern.
Der folgende Screenshot zeigt ein Beispiel für die Seite Dienst erstellen unter Verwendung einiger der bereitgestellten Standardwerte.
gcloud-CLI
Führen Sie den folgenden gcloud metastore services create
-Befehl aus, um einen Metastore-Dienst mit den bereitgestellten Standardeinstellungen zu erstellen:
gcloud metastore services create example-service \ --location=us-central1 \ --instance-size=MEDIUM
Mit diesem Befehl wird ein Dienst mit dem Namen example-service
in der Standardregion (us-central1
) und mit der Standardinstanzgröße (MEDIUM
) erstellt.
REST
Folgen Sie der API-Anleitung zum Erstellen eines Dienstes mit APIs Explorer.
Dataproc-Cluster erstellen und mit Dataproc Metastore verbinden
Als Nächstes erstellen Sie einen Dataproc-Cluster und stellen vom Cluster aus eine Verbindung zu Ihrem Metaspeicher her. Danach verwendet der Cluster den Metastore-Dienst als HMS. Für den Cluster, den Sie hier erstellen, werden die standardmäßig angegebenen Einstellungen verwendet.
Console
Rufen Sie in der Google Cloud Console die Seite Dataproc-Cluster auf.
Wählen Sie in der Navigationsleiste +Cluster erstellen aus.
Das Dialogfeld Cluster erstellen wird geöffnet. Es enthält mehrere Infrastrukturoptionen, aus denen Sie auswählen können.
Wählen Sie in der Zeile Cluster in Compute Engine die Option Erstellen aus.
Die Seite Dataproc-Cluster in Compute Engine erstellen wird geöffnet.
Geben Sie im Feld Clustername
example-cluster
ein.Wählen Sie in den Menüs Region und Zone die Option
us-central1
aus.Verwenden Sie für die übrigen Optionen unter Cluster einrichten die bereitgestellten Standardeinstellungen.
Klicken Sie im Navigationsmenü auf den Tab Cluster anpassen (optional).
Wählen Sie im Abschnitt Dataproc Metastore den zuvor erstellten Metastore-Dienst aus.
Wenn Sie diese Anleitung unverändert ausgeführt haben, heißt sie
example-service
.Verwenden Sie für die übrigen Dienstkonfigurationsoptionen die bereitgestellten Standardeinstellungen.
Klicken Sie auf Erstellen, um den Cluster zu erstellen.
Der neue Cluster wird in der Liste Cluster angezeigt. Als Clusterstatus wird Bereitstellung angezeigt, bis der Cluster einsatzbereit ist. Wenn sie fertig ist, ändert sich der Status in Aktiv. Die Bereitstellung des Clusters kann einige Minuten dauern.
gcloud-CLI
Führen Sie den folgenden gcloud dataproc clusters create
-Befehl aus, um einen Cluster mit den angegebenen Standardeinstellungen zu erstellen:
gcloud dataproc clusters create example-cluster \ --dataproc-metastore=projects/PROJECT_ID/locations/us-central1/services/example-service \ --region=us-central1
Ersetzen Sie PROJECT_ID
durch die Projekt-ID des Projekts, in dem Sie den Dataproc Metastore-Dienst erstellt haben.
REST
Folgen Sie der API-Anleitung zum Erstellen eines Clusters mit dem APIs Explorer.
Mit einem Dataproc-Cluster eine Verbindung zu Apache Hive herstellen
In den nächsten Schritten wird gezeigt, wie Sie einige Beispielbefehle in Apache Hive ausführen, um eine Datenbank und eine Tabelle zu erstellen.
Öffnen Sie als Nächstes eine SSH-Sitzung im Dataproc-Cluster und starten Sie eine Hive-Sitzung.
- Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
- Klicken Sie in der Liste der VM-Instanzen neben
example-cluster
auf SSH.
In Ihrem Basisverzeichnis auf dem Knoten wird ein Browserfenster mit einer Ausgabe wie der folgenden geöffnet:
Connected, host fingerprint: ssh-rsa ...
Linux cluster-1-m 3.16.0-0.bpo.4-amd64 ...
...
example-cluster@cluster-1-m:~$
Führen Sie die folgenden Befehle in der SSH-Sitzung aus, um Hive zu starten und eine Datenbank sowie eine Tabelle zu erstellen:
Starten Sie Hive.
hive
Erstellen Sie eine Datenbank namens
myDatabase
.create database myDatabase;
Rufen Sie die von Ihnen erstellte Datenbank auf.
show databases;
Verwenden Sie die von Ihnen erstellte Datenbank.
use myDatabase;
Erstellen Sie eine Tabelle mit dem Namen
myTable
.create table myTable(id int,name string);
Listen Sie die Tabellen unter
myDatabase
auf.show tables;
Beschreiben Sie das Schema der von Ihnen erstellten Tabelle.
desc MyTable;
Die Ausgabe dieser Befehle sieht in etwa so aus:
$hive
hive> show databases;
OK
default
hive> create database myDatabase;
OK
hive> use myDatabase;
OK
hive> create table myTable(id int,name string);
OK
hive> show tables;
OK
myTable
hive> desc myTable;
OK
id int
name string
Bereinigen
Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud-Konto die auf dieser Seite verwendeten Ressourcen in Rechnung gestellt werden:
- Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten.
- Wenn das Projekt, das Sie löschen möchten, an eine Organisation geknüpft ist, maximieren Sie in der Spalte Name die Liste Organisation.
- Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
- Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.
Alternativ können Sie die Ressourcen löschen, die in dieser Anleitung verwendet werden:
Löschen Sie den Dataproc Metastore-Dienst.
Console
Öffnen Sie in der Google Cloud Console die Seite Dataproc Metastore:
Wählen Sie in der Liste der Dienste
example-service
aus.Klicken Sie in der Navigationsleiste auf Löschen.
Das Dialogfeld Dienst löschen wird geöffnet.
Klicken Sie im Dialogfeld auf Löschen.
Ihr Dienst wird nicht mehr in der Liste der Dienste angezeigt.
gcloud-CLI
Führen Sie den folgenden
gcloud metastore services delete
-Befehl aus, um Ihren Dienst zu löschen.gcloud metastore services delete example-service \ --location=us-central1
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.
Löschen Sie den Dataproc-Cluster, der den Dataproc Metastore-Dienst verwendet hat.