本文为您介绍Iceberg表使用数据湖元数据的必要配置。

支持以下配置:

Spark配置

文件系统采用阿里云对象存储服务OSS。

参数 描述 备注
spark.sql.extensions Spark SQL扩展模块。 固定值为org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions
说明 Iceberg 0.11.0开始引入,仅Spark 3.x支持。
spark.sql.catalog.<catalog-name> Catalog名称。 请填写为自定义的英文名。
spark.sql.catalog.<catalog-name>.catalog-impl Catalog的Class类名。 固定值为org.apache.iceberg.aliyun.dlf.DlfCatalog
spark.sql.catalog.<catalog-name>.io-impl IO写入的Class名称。 固定值为org.apache.iceberg.hadoop.HadoopFileIO
spark.sql.catalog.<catalog-name>.oss.endpoint 阿里云对象存储服务OSS的Endpoint。 请详情参见访问域名和数据中心
推荐您为oss.endpoint参数配置OSS的VPC Endpoint。例如,如果您选择的地域为cn-hangzhou地域,则oss.endpoint需要配置为oss-cn-hangzhou-internal.aliyuncs.com。
说明 如果您需要跨VPC访问OSS,则可以将oss.endpoint配置为OSS的公网Endpoint。
spark.sql.catalog.<catalog-name>.warehouse 表数据存放在OSS的路径。
spark.sql.catalog.<catalog-name>.access.key.id 阿里云账号的Access Key。 获取方法请参见获取AccessKey
spark.sql.catalog.<catalog-name>.access.key.secret 阿里云账号的Access Secret。 获取方法请参见获取AccessKey
spark.sql.catalog.<catalog-name>.dlf.catalog-id 阿里云账号的账号ID。 登录账号信息,请通过用户信息页面获取。获取登录账号
spark.sql.catalog.<catalog-name>.dlf.endpoint DLF服务的Endpoint。
推荐您设置dlf.endpoint参数为DLF的VPC Endpoint。例如,如果您选择的地域为cn-hangzhou地域,则dlf.endpoint参数需要配置为dlf-vpc.cn-hangzhou.aliyuncs.com。
说明 您也可以使用DLF的公网Endpoint,如果您选择的地域为cn-hangzhou地域,则dlf.endpoint参数需要配置为dlf.cn-hangzhou.aliyuncs.com。
spark.sql.catalog.<catalog-name>.dlf.region-id DLF服务的地域名。 请和dlf.endpoint选择的地域保持一致。

Hive配置

参数 描述 备注
iceberg.catalog Catalog名称。 请填写为自定义的英文名。
iceberg.catalog.<catalog-name>.type Catalog类型。 固定值为custom
iceberg.catalog.<catalog-name>.catalog-impl Catalog的Class类名。 固定值为org.apache.iceberg.aliyun.dlf.DlfCatalog
iceberg.catalog.<catalog-name>.io-impl IO写入的Class名称。 固定值为org.apache.iceberg.hadoop.HadoopFileIO
iceberg.catalog.<catalog-name>.warehouse 表数据存放在warehouse路径。 可以是HDFS路径或者阿里云对象存储服务OSS路径。
iceberg.catalog.<catalog-name>.access.key.id 阿里云账号的Access Key。 获取方法请参见获取AccessKey
iceberg.catalog.<catalog-name>.access.key.secret 阿里云账号的Access Secret。 获取方法请参见获取AccessKey
iceberg.catalog.<catalog-name>.dlf.catalog-id 阿里云账号的账号ID。 登录账号信息,请通过用户信息页面获取。获取登录账号
iceberg.catalog.<catalog-name>.dlf.endpoint DLF服务的Endpoint。
推荐您设置dlf.endpoint参数为DLF的VPC Endpoint。例如,如果您选择的地域为cn-hangzhou地域,则dlf.endpoint参数需要配置为dlf-vpc.cn-hangzhou.aliyuncs.com。
说明 您也可以使用DLF的公网Endpoint,如果您选择的地域为cn-hangzhou地域,则dlf.endpoint参数需要配置为dlf.cn-hangzhou.aliyuncs.com。
iceberg.catalog.<catalog-name>.dlf.region-id DLF服务的地域名。 请和dlf.endpoint选择的地域保持一致。