全部產品
Search
文件中心

E-MapReduce:資料湖中繼資料配置

更新時間:Jul 04, 2024

本文為您介紹Iceberg表使用資料湖中繼資料的必要配置。

支援以下配置:

Spark配置

檔案系統採用阿里雲Object Storage Service服務OSS。叢集版本不同預設的Catalog名稱不同,需要配置的參數也不同,各版本對應配置如下:

  • EMR-3.40及後續版本和EMR-5.6.0及後續版本

    說明

    預設的Catalog名稱為iceberg。

    參數

    描述

    備忘

    spark.sql.extensions

    Spark SQL擴充模組。

    固定值為org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions

    說明

    Iceberg 0.11.0開始引入,僅Spark 3.x支援。

    spark.sql.catalog.<catalog-name>

    Catalog名稱。

    固定值為org.apache.iceberg.spark.SparkCatalog

    spark.sql.catalog.<catalog-name>.catalog-impl

    Catalog的Class類名。

    固定值為org.apache.iceberg.aliyun.dlf.hive.DlfCatalog

  • EMR-3.39.x和EMR-5.5.x版本

    說明

    預設的Catalog名稱為dlf。

    參數

    描述

    備忘

    spark.sql.extensions

    Spark SQL擴充模組。

    固定值為org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions

    說明

    Iceberg 0.11.0開始引入,僅Spark 3.x支援。

    spark.sql.catalog.<catalog-name>

    Catalog名稱。

    固定值為org.apache.iceberg.spark.SparkCatalog

    spark.sql.catalog.<catalog-name>.catalog-impl

    Catalog的Class類名。

    固定值為org.apache.iceberg.aliyun.dlf.hive.DlfCatalog

  • EMR-3.38.x版本和EMR-5.3.x~EMR-5.4.x版本(包含)

    說明

    預設的Catalog名稱為dlf_catalog。

    參數

    描述

    備忘

    spark.sql.extensions

    Spark SQL擴充模組。

    固定值為org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions

    說明

    Iceberg 0.11.0開始引入,僅Spark 3.x支援。

    spark.sql.catalog.<catalog-name>

    Catalog名稱。

    固定值為org.apache.iceberg.spark.SparkCatalog

    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

    阿里雲Object Storage Service服務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配置

請根據您建立的叢集版本進行相應的配置:

  • EMR-3.39.0及後續版本和EMR-5.5.0及後續版本

    說明

    預設的Catalog名稱為dlf。

    參數

    描述

    備忘

    iceberg.catalog.<catalog-name>.catalog-impl

    Catalog的Class類名。

    固定值為org.apache.iceberg.aliyun.dlf.hive.DlfCatalog

  • EMR-3.38.x版本和EMR-5.3.x~EMR-5.4.x版本(包含)

    說明

    預設的Catalog名稱為dlf_catalog。

    參數

    描述

    備忘

    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路徑或者阿里雲Object Storage Service服務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選擇的地區保持一致。