将 Apache Iceberg 与 EMR Serverless 结合使用 - Amazon EMR

将 Apache Iceberg 与 EMR Serverless 结合使用

本节介绍了如何将 Apache Iceberg 与 EMR Serverless 应用程序结合使用。Apache Iceberg 是一种表格式,有助于处理数据湖中的大型数据集。

将 Apache Iceberg 与 EMR Serverless 应用程序结合使用
  1. 在相应的 Spark 作业运行中设置所需的 Spark 属性。

    spark.jars=/usr/share/aws/iceberg/lib/iceberg-spark3-runtime.jar
  2. 将 AWS Glue Data Catalog 指定为元存储或配置外部元存储。要了解有关设置元存储的更多信息,请参阅 EMR Serverless 的元存储配置

    配置要用于 Iceberg 的元存储属性。例如,如果要使用 AWS Glue Data Catalog,请在应用程序配置中设置以下属性。

    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.hadoop.hive.metastore.client.factory.class=com.amazonaws.glue.catalog.metastore.AWSGlueDataCatalogHiveClientFactory

    使用 AWS Glue Data Catalog 作为元存储时,可以为 Iceberg 作业指定以下配置属性。

    --conf spark.jars=/usr/share/aws/iceberg/lib/iceberg-spark3-runtime.jar, --conf spark.sql.extensions=org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions, --conf spark.sql.catalog.dev=org.apache.iceberg.spark.SparkCatalog, --conf spark.sql.catalog.dev.catalog-impl=org.apache.iceberg.aws.glue.GlueCatalog, --conf spark.sql.catalog.dev.warehouse=s3://amzn-s3-demo-bucket/EXAMPLE-PREFIX/ --conf spark.hadoop.hive.metastore.client.factory.class=com.amazonaws.glue.catalog.metastore.AWSGlueDataCatalogHiveClientFactory

要了解有关 Amazon EMR 的 Apache Iceberg 版本的更多信息,请参阅 Iceberg 版本历史记录