Nachdem Sie einen Dataproc Metastore-Dienst erstellt haben, können Sie die folgenden Dienste:
- Ein Dataproc-Cluster.
- eine selbstverwaltete Apache Hive-Instanz, eine Apache Spark-Instanz, oder einen Presto-Cluster.
Nachdem Sie eine Verbindung zu einem dieser Dienste hergestellt haben, verwendet er Ihre Dataproc Metastore-Dienst als Hive-Metastore während der Abfrageausführung.
Hinweise
- Aktivieren Sie Dataproc Metastore in Ihrem Projekt.
- Erstellen Sie einen Dataproc Metastore-Dienst.
- Informieren Sie sich über die Netzwerkanforderungen, die für Ihr Projekt spezifisch sind.
Erforderliche Rollen
Um die Berechtigungen zu erhalten, die Sie zum Erstellen eines Dataproc Metastore und eines Dataproc-Clusters benötigen, bitten Sie Ihren Administrator, Ihnen folgenden IAM-Rollen:
-
Sie haben folgende Möglichkeiten, um die vollständige Kontrolle über Dataproc Metastore-Ressourcen zu gewähren:
<ph type="x-smartling-placeholder">
- </ph>
-
Dataproc Metastore-Bearbeiter (
roles/metastore.editor
) für das Nutzer- oder Dienstkonto -
Dataproc Metastore-Administrator (
roles/metastore.admin
) für das Nutzer- oder Dienstkonto
-
Dataproc Metastore-Bearbeiter (
-
So erstellen Sie einen Dataproc-Cluster:
(
roles/dataproc.worker
) für das Dataproc-VM-Dienstkonto -
So gewähren Sie Lese- und Schreibberechtigungen für das Hive-Warehouse-Verzeichnis:
(
roles/storage.objectAdmin
) für das Dataproc-VM-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 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:
metastore.services.create
für das Nutzer- oder Dienstkonto -
So erstellen Sie einen Dataproc-Cluster:
dataproc.clusters.create
für das Nutzer- oder Dienstkonto -
So greifen Sie auf das Hive-Warehouse-Verzeichnis zu:
orgpolicy.policy.get1
,resourcemanager.projects.get
,resourcemanager.projects.list
,storage.objects.*
,storage.multipartUploads.*
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 Zugriff mit IAM verwalten.Dataproc-Cluster
Dataproc ist ein verwalteter Apache Spark- und Apache Hadoop-Dienst, der können Sie Open-Source-Datentools für die Batchverarbeitung nutzen, Abfragen, Streaming und maschinelles Lernen.
Hinweise
Bevor Sie einen Dataproc-Cluster erstellen und anhängen, prüfen Sie, welches Endpunktprotokoll der Dataproc Metastore-Dienst verwendet. Mit diesem Protokoll wird definiert, Ihre Hive Metastore-Clients greifen auf Metadaten zu, die in Dataproc Metastore gespeichert sind. Das kann sich auch auf die Funktionen auswirken, die Sie integrieren und verwenden können mit Ihrer Dienstleistung.
Apache-Secondhand
Wenn Sie das Apache Thrift-Endpunktprotokoll verwenden, sollten Sie die folgenden Netzwerkanforderungen:
Standardmäßig sollten Sie den Dataproc-Cluster und Dataproc Metastore-Dienst im selben Netzwerk. Ihr Dataproc-Cluster kann auch ein Subnetz des Netzwerk des Dataproc Metastore-Dienstes.
Wenn Ihr Dataproc-Cluster zu einem anderen Projekt gehört als des Netzwerks müssen Sie freigegebene Netzwerkberechtigungen konfigurieren.
Wenn Ihr Dataproc-Cluster zu einem anderen Projekt gehört als Ihr Dataproc Metastore-Dienst, müssen Sie zusätzliche Berechtigungen einrichten, bevor Sie einen Dataproc-Cluster erstellen.
gRPC
Wenn Sie das gRPC-Endpunktprotokoll verwenden, berücksichtigen Sie die folgenden Netzwerkanforderungen:
Nachdem Sie einen Dataproc Metastore mit dem gRPC-Endpunkt erstellt haben -Protokoll müssen Sie zusätzliche IAM-Rollen zuweisen.
Wenn Sie die Personal Cluster-Authentifizierung von Dataproc verwenden, Ihr Dataproc Metastore muss das gRPC-Endpunktprotokoll verwenden.
Wenn Ihr Dataproc-Cluster zu einem anderen Projekt gehört als Ihr Dataproc Metastore-Dienst, müssen Sie zusätzliche Berechtigungen einrichten, bevor Sie einen Dataproc-Cluster erstellen.
Cluster erstellen und Dataproc Metastore anhängen
In der folgenden Anleitung wird gezeigt, wie Sie einen Dataproc-Dienst erstellen. und stellen über einen Dataproc Metastore-Dienst eine Verbindung zu ihm her. Diese Es wird vorausgesetzt, dass Sie bereits einen Dataproc Metastore-Dienst erstellt haben.
- Prüfen Sie vor dem Erstellen des Dataproc-Clusters, ob die Das ausgewählte Dataproc-Image ist mit der Hive-Metastore-Version kompatibel die Sie beim Erstellen des Dataproc Metastores ausgewählt haben. Weitere Informationen finden Sie in der Liste der Dataproc-Image-Versionen.
Dataproc-Cluster erstellen, um die Netzwerkverbindung zu optimieren sich in derselben Region wie Ihr Dataproc Metastore-Dienst befindet.
Console
Öffnen Sie in der Google Cloud Console die Dataproc-Seite Create a cluster (Cluster erstellen):
Geben Sie im Feld Clustername einen Namen für den Cluster ein.
Wählen Sie in den Menüs Region und Zone dieselbe Region aus. in dem Sie den Dataproc Metastore-Dienst erstellt haben. Sie können eine beliebige Zone auswählen.
Klicken Sie auf den Tab Cluster anpassen.
Wählen Sie im Abschnitt Netzwerkkonfiguration dasselbe Netzwerk aus, in dem Sie Ihren Dataproc Metastore-Dienst erstellt haben.
Wählen Sie im Abschnitt Dataproc Metastore Dataproc Metastore-Dienst, den Sie ausführen möchten Anhängen. Falls Sie noch keines erstellt haben, können Sie Erstellen Neuer Dienst.
Optional: Wenn der Dataproc Metastore-Dienst das gRPC- Endpunktprotokoll:
- Klicken Sie auf den Tab Sicherheit verwalten.
- Wählen Sie im Abschnitt Projektzugriff die Option Aktiviert den Bereich „cloud-platform“ für diesen Cluster.
Konfigurieren Sie die verbleibenden Dienstoptionen nach Bedarf.
Klicken Sie zum Erstellen des Clusters auf Erstellen.
Der neue Cluster wird nun in der Liste „Cluster“ angezeigt. Der Clusterstatus wird Wird bereitgestellt, bis der Cluster einsatzbereit ist. Sobald es einsatzbereit ist, ändert sich der Status in Running (Wird ausgeführt).
gcloud-CLI
Führen Sie den folgenden Befehl aus, um einen Cluster zu erstellen und einen Dataproc Metastore anzuhängen:
Follower von gcloud dataproc clusters create
Befehl:
gcloud dataproc clusters create CLUSTER_NAME \ --dataproc-metastore=projects/PROJECT_ID/locations/LOCATION/services/SERVICE \ --region=LOCATION \ --scopes=SCOPES
Ersetzen Sie Folgendes:
CLUSTER_NAME
: der Name Ihres neuen Dataproc-ClusterPROJECT_ID
: die Projekt-ID des Projekt, in dem Sie den Dataproc Metastore-Dienst erstellt haben.LOCATION
: dieselbe Region, die Sie erstellt haben Dataproc Metastore-Dienst in.SERVICE
: der Name des Dataproc Metastore-Dienst, den Sie an den Cluster.SCOPES
: (optional) Wenn Ihr Dataproc Metastore Dienst verwendet das gRPC-Endpunktprotokoll, verwenden Siecloud-platform
.
REST
Folgen Sie der API-Anleitung zum Erstellen eines Clusters mit dem APIs Explorer.
Cluster mithilfe von Dataproc-Clusterattributen anhängen
Sie können einen Dataproc-Cluster auch an einen Dataproc Metastore anhängen
mit Dataproc-Attributen.
Zu diesen Attributen gehören der Dataproc Metastore ENDPOINT_URI
und
WAREHOUSE_DIR
.
Folgen Sie dieser Anleitung, wenn Ihr Dataproc Metastore Dienst verwendet Private Service Connect oder wenn Sie einen Dataproc-Cluster an die Hilfsversion anhängen möchten Ihres Dataproc Metastore-Dienstes.
Es gibt zwei Möglichkeiten, einen Dataproc-Cluster mithilfe der
ENDPOINT_URI
- und WAREHOUSE_DIR
-Properties:
Option 1: Beim Erstellen eines Dataproc-Clusters
Verwenden Sie beim Erstellen eines Dataproc-Clusters das Attribut „Properties“ mit die folgende Hive-Konfiguration an:
gcloud dataproc clusters create CLUSTER_NAME \ --properties="hive:hive.metastore.uris=ENDPOINT_URI,hive:hive.metastore.warehouse.dir=WAREHOUSE_DIR/hive-warehouse"
Ersetzen Sie Folgendes:
CLUSTER_NAME
: der Name Ihres neuen Dataproc Cluster.ENDPOINT_URI
: Der Endpunkt-URI Ihres Dataproc Metastore-Dienstes.WAREHOUSE_DIR
: Der Speicherort Ihres Hive-Warehouse-Verzeichnisses.
Option 2: Datei hive-site.xml
aktualisieren
Sie können einen Dataproc-Cluster auch anhängen, indem Sie das
Datei hive-site.xml
des Clusters.
- Stellen Sie über SSH eine Verbindung zum Cluster
.*-m
her. Öffnen Sie die Datei
/etc/hive/conf/hive-site.xml
und ändern Sie die folgenden Zeilen:<property> <name>hive.metastore.uris</name> <!-- Update this value. --> <value>ENDPOINT_URI</value> </property> <!-- Add this property entry. --> <property> <name>hive.metastore.warehouse.dir</name> <value>WAREHOUSE_DIR</value> </property>
Ersetzen Sie Folgendes:
ENDPOINT_URI
: Der Endpunkt-URI Ihres Dataproc Metastore-Dienstes.WAREHOUSE_DIR
: Der Standort Ihres Hive-Warehouse-Verzeichnis.
Starten Sie HiveServer2 neu:
sudo systemctl restart hive-server2.service
Selbstverwaltete Cluster
Ein selbstverwalteter Cluster kann eine Apache Hive-Instanz sein, eine Apache Spark-Instanz, oder einen Presto-Cluster.
Selbstverwalteten Cluster anhängen
Legen Sie in der Clientkonfigurationsdatei die folgenden Werte fest:
hive.metastore.uris=ENDPOINT_URI
hive.metastore.warehouse.dir=WAREHOUSE_DIR
Ersetzen Sie Folgendes:
ENDPOINT_URI
: Der Endpunkt-URI Ihres Dataproc Metastore-Dienstes.WAREHOUSE_DIR
: Der Standort Ihres Hive-Warehouse-Verzeichnis.
Nächste Schritte
- Kurzanleitung zur Bereitstellung von Dataproc Metastore
- Dataproc Metastore – Übersicht
- Übersicht zu Dataproc