Dataproc Metastore-Dienst bereitstellen

Auf dieser Seite erfahren Sie, wie Sie einen Dataproc Metastore-Dienst erstellen und eine Verbindung von einem Dataproc-Cluster aus 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 einen vollständig kompatiblen Hive Metastore (HMS), der der etablierte Standard im Open-Source-Big-Data-Umfeld für die Verwaltung technischer Metadaten ist. Mit diesem Dienst können Sie die Metadaten Ihrer Datenlakes verwalten und die Interoperabilität zwischen den verschiedenen von Ihnen verwendeten Tools zur Datenverarbeitung sicherstellen.


Klicken Sie auf Anleitung, um eine detaillierte Anleitung für diese Aufgabe direkt in der Google Cloud Console aufzurufen.

Anleitung


Hinweise

  1. 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.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Dataproc Metastore, Dataproc APIs.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Dataproc Metastore, Dataproc APIs.

    Enable the APIs

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen eines Dataproc-Metastores und eines Dataproc-Clusters benötigen:

  • So gewähren Sie vollständigen Zugriff auf alle Dataproc Metastore-Ressourcen, einschließlich der Festlegung von IAM-Berechtigungen: (roles/metastore.admin) für das Nutzerkonto 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) im Dienstkonto

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 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 (roles/dataproc.worker) aktiviert für das Dienstkonto

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Weitere Informationen zu bestimmten Rollen und Berechtigungen für Dataproc Metastore finden Sie unter IAM-Rollen für Dataproc Metastore.

Dataproc Metastore-Dienst erstellen

In der folgenden Anleitung wird gezeigt, wie Sie einen einfachen Dataproc Metastore-Dienst mit den bereitgestellten Standardeinstellungen erstellen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Dataproc Metastore auf.

    Dataproc Metastore aufrufen

  2. Klicken Sie im Navigationsmenü auf + Erstellen.

    Das Dialogfeld Metastore-Dienst erstellen wird geöffnet.

  3. Wählen Sie Dataproc Metastore 2 aus.

  4. Geben Sie im Feld Name des Dienstkontos example-service ein.

  5. Wählen Sie im Feld Data location (Speicherort der Daten) us-central1 aus.

  6. Verwenden Sie für die verbleibenden Dienstkonfigurationsoptionen die bereitgestellte Standardeinstellungen.

  7. Klicken Sie auf Senden, um den Dienst zu erstellen und zu starten.

Der neue Metastore-Dienst wird auf der Seite Dataproc Metastore angezeigt. Die Status Wird erstellt angezeigt, bis der Dienst einsatzbereit ist. Sobald die Einrichtung abgeschlossen ist, ändert sich der Status zu Aktiv. Die Bereitstellung des Dienstes kann ein paar Minuten.

Der folgende Screenshot zeigt ein Beispiel für die Seite Dienst erstellen. unter Verwendung einiger der angegebenen Standardeinstellungen.

Die Seite „Dienst erstellen“.

gcloud-CLI

Führen Sie den folgenden gcloud metastore services create-Befehl aus, um einen Metadatenspeicherdienst mit den angegebenen Standardeinstellungen zu erstellen:

 gcloud metastore services create example-service \
     --location=us-central1 \
     --instance-size=MEDIUM

Mit diesem Befehl wird im Standarddienst ein Dienst mit dem Namen example-service erstellt. Region (us-central1) und mit der Standardinstanzgröße (MEDIUM) festgelegt.

REST

Folgen Sie der API-Anleitung, um einen Dienst zu erstellen. mit APIs Explorer.

Dataproc-Cluster erstellen und eine Verbindung zum Dataproc Metastore herstellen

Als Nächstes erstellen Sie einen Dataproc-Cluster und stellen eine Verbindung zum Metaspeicher her aus dem Cluster. Danach verwendet Ihr Cluster den Metaspeicherdienst als HMS. Für den hier erstellten Cluster werden die standardmäßig bereitgestellten Einstellungen verwendet.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Dataproc-Cluster auf.

    Zu Dataproc-Clustern

  2. Wählen Sie in der Navigationsleiste +Cluster erstellen aus.

    Das Dialogfeld Cluster erstellen wird geöffnet. Es enthält mehrere Infrastrukturoptionen, die aus denen Sie wählen können.

  3. 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.

  4. Geben Sie im Feld Clustername den Wert example-cluster ein.

  5. Wählen Sie in den Menüs Region und Zone die Option us-central1 aus.

  6. Verwenden Sie für die übrigen Optionen unter Cluster einrichten die angegebenen Standardeinstellungen.

  7. Klicken Sie im Navigationsmenü auf den Tab Cluster anpassen (optional).

  8. Wählen Sie im Abschnitt Dataproc Metastore den Metastore aus. den Sie zuvor erstellt haben.

    Wenn Sie dieser Anleitung genau gefolgt sind, lautet der Name example-service.

  9. Verwenden Sie für die restlichen Optionen der Dienstkonfiguration die angegebenen Standardeinstellungen.

  10. Klicken Sie auf Erstellen, um den Cluster zu erstellen.

    Der neue Cluster wird in der Liste Cluster angezeigt. Der Clusterstatus zeigt Bereitstellung an, bis der Cluster einsatzbereit ist. Wenn es ä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 bereitgestellten 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 Projekt, in dem Sie den Dataproc Metastore-Dienst erstellt haben.

REST

Folgen Sie der API-Anleitung zum Erstellen eines Clusters mit dem APIs Explorer.

Über einen Dataproc-Cluster eine Verbindung zu Apache Hive herstellen

In den nächsten Schritten erfahren Sie, wie Sie in Apache Hive einige Beispielbefehle ausführen, um eine Datenbank und eine Tabelle.

Öffnen Sie als Nächstes eine SSH-Sitzung im Dataproc-Cluster und starten Sie eine Hive-Sitzung

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
  2. 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 folgt geöffnet: zu:

Connected, host fingerprint: ssh-rsa ...
Linux cluster-1-m 3.16.0-0.bpo.4-amd64 ...
...
example-cluster@cluster-1-m:~$

Führen Sie in der SSH-Sitzung die folgenden Befehle aus, um Hive zu starten und eine Datenbank und eine Tabelle zu erstellen:

  1. Starten Sie Hive.

    hive
    
  2. Erstellen Sie eine Datenbank namens myDatabase.

    create database myDatabase;
    
  3. Zeigen Sie die von Ihnen erstellte Datenbank an.

    show databases;
    
  4. Verwenden Sie die von Ihnen erstellte Datenbank.

    use myDatabase;
    
  5. Erstellen Sie eine Tabelle mit dem Namen myTable.

    create table myTable(id int,name string);
    
  6. Listen Sie die Tabellen unter myDatabase auf.

    show tables;
    
  7. 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 in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden:

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. If the project that you plan to delete is attached to an organization, expand the Organization list in the Name column.
  3. In the project list, select the project that you want to delete, and then click Delete.
  4. 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:

  1. Löschen Sie den Dataproc Metastore-Dienst.

    Console

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

      Zu Dataproc Metastore

    2. Wählen Sie in der Dienstliste example-service aus.

    3. Klicken Sie in der Navigationsleiste auf Löschen.

      Das Dialogfeld Dienst löschen wird geöffnet.

    4. Klicken Sie im Dialogfeld auf Löschen.

      Ihr Dienst wird nicht mehr in der Dienstliste angezeigt.

    gcloud-CLI

    Führen Sie den folgenden gcloud metastore services delete-Befehl aus, um den 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.

  2. Löschen Sie den Cloud Storage-Bucket für den Dataproc Metastore-Dienst.

  3. Dataproc-Cluster löschen die den Dataproc Metastore-Dienst verwendet haben.

Nächste Schritte