Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Lavorare con una gerarchia multi-catalogo in AWS Incolla Data Catalog con Spark su Amazon EMR
Puoi registrare il tuo cluster Amazon EMR per accedere al AWS Glue Data Catalog, che rende disponibili tabelle e altre risorse del catalogo a vari consumatori. AWS Glue Data Catalog supporta una gerarchia multi-catalogo, che unifica i dati nei data lake di Amazon S3. Fornisce inoltre un'API Hive metastore e un'API REST Apache Iceberg open source per l'accesso ai dati. Queste funzionalità sono disponibili per Amazon EMR e altri servizi come Amazon Redshift. Amazon Athena
Come sono organizzate le risorse del catalogo
Quando crei risorse nel AWS Glue Data Catalog, puoi accedervi da qualsiasi motore SQL che supporti l'API REST di Apache Iceberg o il metastore Hive. AWS Lake Formation gestisce le autorizzazioni.
In AWS Glue Data Catalog, i dati sono organizzati in una gerarchia logica di cataloghi, database e tabelle:
-
Catalogo: un contenitore logico che contiene oggetti da un archivio dati, come schemi o tabelle.
-
Catalogo per archiviare tabelle Redshift Managed Storage (RMS): quando gestisci i cataloghi per archiviare tabelle RMS, puoi accedere a queste tabelle utilizzando Iceberg.
-
Database: organizza oggetti di dati come tabelle e viste in un catalogo.
-
Tabelle e viste: oggetti dati in un database che forniscono un livello di astrazione con uno schema comprensibile. Forniscono un livello per accedere ai dati sottostanti, che possono essere in vari formati e in diverse posizioni.
Configurazione di un catalogo di dati da utilizzare con Amazon EMR
Per iniziare, configura il catalogo per supportare gli strumenti Amazon EMR. Il AWS Glue Data Catalog offre compatibilità con i metastore Hive e API compatibili con Iceberg REST.
Configurazione di Amazon EMR con un metastore Hive
Per informazioni su come configurarlo, consulta il supporto di AWS Glue Data Catalog per i lavori Spark nella Glue User Guide. AWS Questo argomento descrive come configurare AWS Glue Data Catalog come metastore Hive e renderlo disponibile come endpoint. Inoltre, è disponibile la documentazione di Amazon EMR che mostra come specificare AWS Glue Data Catalog come metastore Spark, in Usa il catalogo dati di Glue come metastore Apache Hive AWS per Spark.
Autorizzazioni per accedere alle risorse in AWS Catalogo dati Glue
Questa sezione descrive i requisiti delle policy IAM per l'utilizzo degli strumenti Amazon EMR con i dati del catalogo. Dopo aver registrato il cluster con AWS Glue Data Catalog, sono necessarie le seguenti autorizzazioni per scoprire la creazione e le modifiche al catalogo di dati creato successivamente:
-
colla: GetCatalog
-
colla: GetCatalogs
-
set: AssumeRole
-
set: TagSession
-
set: SetContext
-
set: SetSourceIdentity
Nella maggior parte dei casi, quando si assegnano le autorizzazioni, si consiglia di creare un ruolo IAM e di assegnargli le autorizzazioni.
Inoltre, per interrogare i dati del catalogo, è necessario impostare le autorizzazioni per l'utilizzo del catalogo dati. AWS Lake Formation Per ulteriori informazioni sull'impostazione delle autorizzazioni per i cataloghi di dati in AWS Lake Formation, vedere Concessione e revoca delle autorizzazioni sulle risorse di Data Catalog.
Dopo aver creato e configurato il cluster e impostato le autorizzazioni per gli oggetti del catalogo, puoi inviare lavori per interrogare ed elaborare i dati.
Configura Spark per accedere a una gerarchia di più cataloghi in AWS Catalogo dati Glue
Con EMR 7.5, puoi configurare Spark per utilizzare AWS la gerarchia multi-catalogo di Glue. Una gerarchia multi-catalogo consente di:
-
Trasferisci i tuoi dati Redshift Managed Storage (RMS), come tabelle, viste e viste materializzate, dai data warehouse Amazon Redshift esistenti a Glue Data Catalog. AWS Puoi interrogare questi oggetti utilizzando EMR su EC2 ed EMR Serverless.
-
Crea cataloghi RMS, AWS incolla Data Catalog e archivia i dati in RMS utilizzando ZeroETL e interroga i dati con i motori di interrogazione. Iceberg-compatible
-
Crea tabelle Iceberg gestite in AWS Glue Data Catalog con una gestione completa dello storage che include compattazione, istantanee e conservazione.
Connessione a più cataloghi quando inizializzi una sessione Spark
Gli esempi seguenti dimostrano come utilizzare la shell interattiva Spark, Spark submit o Amazon EMR Notebooks per lavorare con la gerarchia multi-catalogo di Glue. AWS
Inizializza una sessione Spark su Redshift Managed Storage con AWS Catalogo dati Glue
Il seguente comando di esempio inizializza una sessione Spark con il Glue Data Catalog. AWS
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
L'esempio seguente inizializza una sessione Spark utilizzando l'API REST di Iceberg e lo storage gestito Redshift con Glue Data Catalog. AWS
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
Per ulteriori informazioni sull'utilizzo di una gerarchia multi-catalogo AWS Glue con Spark Iceberg, consulta Use an Iceberg cluster with Spark. https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-iceberg-use-spark-cluster.html
Considerazioni e limitazioni per una configurazione con più cataloghi
-
L'uso di una gerarchia multi-catalogo con il metastore Apache Hive non è supportato.
-
L'utilizzo di una gerarchia a più cataloghi con Apache Iceberg non può supportare il fallback al metastore di Apache Hive, quando si utilizza.
SparkSessionCatalog -
L'EMR su cluster EC2 con ruolo Runtime non supporta la gerarchia multi-catalogo.
-
EMR su cluster EC2 abilitati con non supporta la gerarchia multi-catalogo. AWS Lake Formation