Uso do Apache Iceberg com o Amazon EMR no EKS - Amazon EMR

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Uso do Apache Iceberg com o Amazon EMR no EKS

O JAR de runtime para o Iceberg contém as classes necessárias do Iceberg para suporte ao runtime do Spark. O procedimento a seguir mostra como iniciar uma execução de trabalho usando o runtime do Spark do Iceberg.

Usar o Apache Iceberg com as aplicações do Amazon EMR no EKS
  1. Ao iniciar uma execução de trabalho para enviar um trabalho do Spark na configuração da aplicação, inclua o arquivo JAR de runtime do Iceberg para o Spark:

    --job-driver '{"sparkSubmitJobDriver" : {"sparkSubmitParameters" : "--jars local:///usr/share/aws/iceberg/lib/iceberg-spark3-runtime.jar"}}'
  2. Inclua a configuração adicional do Iceberg:

    --configuration-overrides '{ "applicationConfiguration": [ "classification" : "spark-defaults", "properties" : { "spark.sql.catalog.dev.warehouse" : "s3://amzn-s3-demo-bucket/EXAMPLE-PREFIX/ ", "spark.sql.extensions ":" org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions ", "spark.sql.catalog.dev" : "org.apache.iceberg.spark.SparkCatalog", "spark.sql.catalog.dev.catalog-impl" : "org.apache.iceberg.aws.glue.GlueCatalog", "spark.sql.catalog.dev.io-impl": "org.apache.iceberg.aws.s3.S3FileIO" } ] }'

Para saber mais sobre as versões de liberação do Apache Iceberg para o EMR, consulte Iceberg release history.

Configurações de sessão do Spark para integração de catálogos

Configurações de sessão do Spark para integração do catálogo Iceberg AWS Glue

Este exemplo mostra como integrar o Iceberg com: Crawler do AWS Glue

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.catalog.rms.glue.account-id = AWS account ID \ --conf spark.sql.extensions= org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions

Veja a seguir um exemplo de consulta:

SELECT * FROM rms.rmsdb.table1

Configurações de sessão do Spark para integração do catálogo Iceberg REST AWS Glue

Este exemplo mostra como integrar o Iceberg REST com: Crawler do AWS Glue

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.extensions= org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions

Veja a seguir um exemplo de consulta:

SELECT * FROM rms.rmsdb.table1

Essa configuração funciona somente para o Redshift Managed Storage. O FGAC para Amazon S3 não é compatível.