Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Arbeiten mit einer Hierarchie mit mehreren Katalogen in AWS Glue Data Catalog mit Spark auf Amazon EMR
Sie können Ihren EMR Amazon-Cluster registrieren, um auf den AWS Glue-Datenkatalog zuzugreifen, der Tabellen und andere Katalogressourcen verschiedenen Verbrauchern zur Verfügung stellt. AWS Glue Data Catalog unterstützt eine Hierarchie mit mehreren Katalogen, die Ihre Daten über Amazon S3 S3-Datenseen hinweg vereinheitlicht. Es bietet außerdem sowohl einen Hive-Metastore API als auch einen Open-Source-Apache REST API Iceberg für den Zugriff auf die Daten. Diese Funktionen sind für Amazon EMR und andere Dienste wie Amazon Athena Amazon Redshift verfügbar.
Wie sind die Katalogressourcen organisiert
Wenn Sie Ressourcen im AWS Glue-Datenkatalog erstellen, können Sie von jeder SQL Engine aus darauf zugreifen, die den Apache Iceberg REST API - oder Hive-Metastore unterstützt. AWS Lake Formation verwaltet die Genehmigungen.
In AWS Glue Data Catalog sind Daten in einer logischen Hierarchie von Katalogen, Datenbanken und Tabellen organisiert:
Katalog — Ein logischer Container, der Objekte aus einem Datenspeicher wie Schemas oder Tabellen enthält.
-
Katalog zum Speichern von Redshift Managed Storage (RMS) -Tabellen — Wenn Sie Kataloge zum Speichern von RMS Tabellen verwalten, können Sie mit Iceberg auf diese Tabellen zugreifen.
Datenbank — Organisiert Datenobjekte wie Tabellen und Ansichten in einem Katalog.
Tabellen und Ansichten — Datenobjekte in einer Datenbank, die eine Abstraktionsebene mit einem verständlichen Schema bieten. Sie bieten eine Ebene für den Zugriff auf zugrunde liegende Daten, die in verschiedenen Formaten und an verschiedenen Orten vorliegen können.
Konfiguration eines Datenkatalogs für die Verwendung mit Amazon EMR
Zu Beginn konfigurieren Sie den Katalog so, dass er EMR Amazon-Tools unterstützt. Der AWS Glue-Datenkatalog bietet Hive-Metastore-Kompatibilität und REST Iceberg-Kompatibilität. APIs
Konfiguration von Amazon EMR mit einem Hive-Metastore
Informationen zur Einrichtung finden Sie unter Unterstützung des AWS Glue-Datenkatalogs für Spark-Jobs im AWS Glue-Benutzerhandbuch. In diesem Thema wird beschrieben, wie der AWS Glue-Datenkatalog als Hive-Metastore konfiguriert und als Endpunkt verfügbar gemacht wird. Darüber hinaus ist unter Verwenden des AWS Glue-Datenkatalogs als Apache Hive-Metastore für Spark eine EMR Amazon-Dokumentation verfügbar, die Ihnen zeigt, wie Sie AWS Glue Data Catalog als Spark-Metastore angeben.
Berechtigungen für den Zugriff auf Ressourcen im AWS Glue Data Catalog
In diesem Abschnitt werden die IAM Richtlinienanforderungen für die Verwendung von EMR Amazon-Tools mit Katalogdaten beschrieben. Nachdem Sie Ihren Cluster beim AWS Glue-Datenkatalog registriert haben, benötigen Sie die folgenden Berechtigungen, um die Erstellung und Änderungen des anschließend erstellten Datenkatalogs zu ermitteln:
kleben: GetCatalog
kleben: GetCatalogs
Sätze: AssumeRole
sts: TagSession
sts: SetContext
sts: SetSourceIdentity
In den meisten Fällen empfehlen wir, bei der Zuweisung von Berechtigungen eine IAM Rolle zu erstellen und ihr Berechtigungen zuzuweisen.
Um Katalogdaten abzufragen, müssen Sie außerdem die Berechtigungen für den Datenkatalog mithilfe von AWS Lake Formation festlegen. Weitere Informationen zum Festlegen von Berechtigungen für Datenkataloge finden Sie unter Erteilen und Widerrufen von Berechtigungen für Datenkatalogressourcen. AWS Lake Formation
Nachdem Sie Ihren Cluster erstellt und konfiguriert und die Berechtigungen für Ihre Katalogobjekte festgelegt haben, können Sie Jobs zum Abfragen und Verarbeiten von Daten einreichen.
Konfigurieren Sie Spark für den Zugriff auf eine Hierarchie mit mehreren Katalogen in AWS Glue Data Catalog
Mit EMR 7.5 können Sie Spark so konfigurieren, dass die Multi-Katalog-Hierarchie von AWS Glue verwendet wird. Eine Hierarchie mit mehreren Katalogen ermöglicht Ihnen:
Bringen Sie Ihre Redshift Managed Storage (RMS) -Daten wie Tabellen, Ansichten und materialisierte Ansichten aus bestehenden Amazon Redshift Data Warehouses in AWS Glue Data Catalog. Sie können diese Objekte mit EMR on EC2 und Serverless abfragen. EMR
Erstellen Sie RMS Kataloge, fügen AWS Glue Data Catalog hinzu und speichern Sie Daten RMS mit Zero ETL und fragen Sie die Daten mit Iceberg-kompatiblen Abfrage-Engines ab.
Erstellen Sie verwaltete Iceberg-Tabellen in AWS Glue Data Catalog mit umfassendem Speichermanagement, das Komprimierung, Snapshots und Aufbewahrung umfasst.
Verbindung zu mehreren Katalogen herstellen, wenn Sie eine Spark-Sitzung initialisieren
Die folgenden Beispiele zeigen, wie Sie die interaktive Spark-Shell, Spark Submit oder Amazon EMR Notebooks verwenden können, um mit der Multi-Katalog-Hierarchie von AWS Glue zu arbeiten.
Initialisieren Sie eine Spark-Sitzung mit Redshift Managed Storage mit AWS Glue Data Catalog
Der folgende Beispielbefehl initialisiert eine Spark-Sitzung mit dem AWS Glue-Datenkatalog.
spark-sql \ --conf spark.sql.catalog.rms=org.apache.iceberg.spark.SparkCatalog \ --conf spark.sql.catalog.rms.type=glue \ --conf spark.sql.catalog.rms.glue.id=
Glue RMS catalog ID
\ --conf spark.sql.defaultCatalog=rms --conf spark.sql.extensions=org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions
Das folgende Beispiel initialisiert eine Spark-Sitzung mit dem Iceberg REST API und Redshift Managed Storage with AWS Glue Data Catalog.
spark-sql \ --conf spark.sql.catalog.rms=org.apache.iceberg.spark.SparkCatalog \ --conf spark.sql.catalog.rms.type=rest \ --conf spark.sql.catalog.rms.warehouse=
glue RMS catalog ID
\ --conf spark.sql.catalog.rms.uri=Glue endpoint URI
/iceberg \ --conf spark.sql.catalog.rms.rest.sigv4-enabled=true \ --conf spark.sql.catalog.rms.rest.signing-name=glue \ --conf spark.sql.defaultCatalog=rms \ --conf spark.sql.extensions=org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions
Weitere Informationen zur Verwendung einer AWS Glue-Hierarchie mit mehreren Katalogen mit Spark Iceberg finden Sie unter Verwenden eines Iceberg-Clusters mit Spark.
Überlegungen und Einschränkungen für eine Konfiguration mit mehreren Katalogen
Die Verwendung einer Hierarchie mit mehreren Katalogen mit Apache Hive Metastore wird nicht unterstützt.
Die Verwendung einer Hierarchie mit mehreren Katalogen mit Apache Iceberg unterstützt bei Verwendung keinen Fallback auf Apache Hive Metastore.
SparkSessionCatalog
EMRauf EC2 Clustern mit Runtime-Rolle wird die Hierarchie mit mehreren Katalogen nicht unterstützt.
EMRauf EC2 Clustern, deren Aktivierung aktiviert ist, unterstützt AWS Lake Formation keine Hierarchie mit mehreren Katalogen.