このトピックでは、Iceberg テーブル用に Data Lake Formation (DLF) メタデータを設定する方法について説明します。
以下の設定がサポートされています。
Spark 設定
この設定では、Object Storage Service (OSS) をファイルシステムとして使用します。デフォルトのカタログ名と必要なパラメーターは、E-MapReduce (EMR) クラスターのバージョンによって異なります。以下のセクションでは、特定のバージョンごとの設定について説明します。
-
EMR-3.40 以降、および EMR-5.6.0 以降
説明デフォルトのカタログ名は
icebergです。パラメーター
説明
備考
spark.sql.extensions
Spark SQL 拡張モジュール。
このパラメーターを org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions に設定します。
説明このパラメーターは Iceberg 0.11.0 で導入され、Spark 3.x でのみサポートされています。
spark.sql.catalog.<catalog-name>
カタログ名。
このパラメーターを org.apache.iceberg.spark.SparkCatalog に設定します。
spark.sql.catalog.<catalog-name>.catalog-impl
カタログの実装クラス。
このパラメーターを org.apache.iceberg.aliyun.dlf.hive.DlfCatalog に設定します。
-
EMR-3.39.x および EMR-5.5.x
説明デフォルトのカタログ名は
dlfです。パラメーター
説明
備考
spark.sql.extensions
Spark SQL 拡張モジュール。
このパラメーターを org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions に設定します。
説明このパラメーターは Iceberg 0.11.0 で導入され、Spark 3.x でのみサポートされています。
spark.sql.catalog.<catalog-name>
カタログ名。
このパラメーターを org.apache.iceberg.spark.SparkCatalog に設定します。
spark.sql.catalog.<catalog-name>.catalog-impl
カタログの実装クラス。
このパラメーターを org.apache.iceberg.aliyun.dlf.hive.DlfCatalog に設定します。
-
EMR-3.38.x、および EMR-5.3.x から EMR-5.4.x (両端を含む)
説明デフォルトのカタログ名は
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>
カタログ名。
このパラメーターを org.apache.iceberg.spark.SparkCatalog に設定します。
spark.sql.catalog.<catalog-name>.catalog-impl
カタログの実装クラス。
このパラメーターを org.apache.iceberg.aliyun.dlf.DlfCatalog に設定します。
spark.sql.catalog.<catalog-name>.io-impl
I/O 実装クラス。
このパラメーターを org.apache.iceberg.hadoop.HadoopFileIO に設定します。
spark.sql.catalog.<catalog-name>.oss.endpoint
Object Storage Service (OSS) エンドポイント。
詳細については、「リージョンとエンドポイント」をご参照ください。
oss.endpoint を OSS VPC エンドポイントに設定することを推奨します。例えば、リージョンが China (Hangzhou) の場合、oss.endpoint を
oss-cn-hangzhou-internal.aliyuncs.comに設定します。説明VPC を跨いで OSS にアクセスする場合は、oss.endpoint を OSS パブリックエンドポイントに設定してください。
spark.sql.catalog.<catalog-name>.warehouse
テーブルデータが格納される OSS パス。
なし。
spark.sql.catalog.<catalog-name>.access.key.id
Alibaba Cloud アカウントの AccessKey ID。
詳細については、「AccessKey ペアを取得する」をご参照ください。
spark.sql.catalog.<catalog-name>.access.key.secret
Alibaba Cloud アカウントの AccessKey Secret。
詳細については、「AccessKey ペアを取得する」をご参照ください。
spark.sql.catalog.<catalog-name>.dlf.catalog-id
Alibaba Cloud アカウント ID。
アカウント ID を確認するには、セキュリティ設定 ページにアクセスしてください。Alibaba Cloud コンソールにログインし、[Account Management] ページで アカウント ID を確認することもできます。
spark.sql.catalog.<catalog-name>.dlf.endpoint
DLF サービスエンドポイント。
dlf.endpoint を DLF VPC エンドポイントに設定することを推奨します。例えば、リージョンが China (Hangzhou) の場合、dlf.endpoint を
dlf-vpc.cn-hangzhou.aliyuncs.comに設定します。説明DLF パブリックエンドポイントを使用することもできます。例えば、リージョンが China (Hangzhou) の場合、dlf.endpoint を
dlf.cn-hangzhou.aliyuncs.comに設定します。spark.sql.catalog.<catalog-name>.dlf.region-id
DLF サービスのリージョン ID。
このリージョンが dlf.endpoint で指定したものと一致していることを確認してください。
Hive 設定
クラスターのバージョンに基づいてパラメーターを設定します。
-
EMR-3.39.0 以降、および EMR-5.5.0 以降
説明デフォルトのカタログ名は
dlfです。パラメーター
説明
備考
iceberg.catalog.<catalog-name>.catalog-impl
カタログの実装クラス。
このパラメーターを org.apache.iceberg.aliyun.dlf.hive.DlfCatalog に設定します。
-
EMR-3.38.x、および EMR-5.3.x から EMR-5.4.x (両端を含む)
説明デフォルトのカタログ名は
dlf_catalogです。パラメーター
説明
備考
iceberg.catalog
カタログ名。
カスタム名を指定します。
iceberg.catalog.<catalog-name>.type
カタログタイプ。
このパラメーターを custom に設定します。
iceberg.catalog.<catalog-name>.catalog-impl
カタログの実装クラス。
このパラメーターを org.apache.iceberg.aliyun.dlf.DlfCatalog に設定します。
iceberg.catalog.<catalog-name>.io-impl
I/O 実装クラス。
このパラメーターを org.apache.iceberg.hadoop.HadoopFileIO に設定します。
iceberg.catalog.<catalog-name>.warehouse
テーブルデータが格納されるウェアハウスパス。
HDFS パスまたは OSS パスを指定できます。
iceberg.catalog.<catalog-name>.access.key.id
Alibaba Cloud アカウントの AccessKey ID。
詳細については、「AccessKey ペアを取得する」をご参照ください。
iceberg.catalog.<catalog-name>.access.key.secret
Alibaba Cloud アカウントの AccessKey Secret。
詳細については、「AccessKey ペアを取得する」をご参照ください。
iceberg.catalog.<catalog-name>.dlf.catalog-id
Alibaba Cloud アカウント ID。
アカウント ID を確認するには、セキュリティ設定 ページにアクセスしてください。
iceberg.catalog.<catalog-name>.dlf.endpoint
DLF サービスエンドポイント。
dlf.endpoint を DLF VPC エンドポイントに設定することを推奨します。例えば、リージョンが China (Hangzhou) の場合、dlf.endpoint を
dlf-vpc.cn-hangzhou.aliyuncs.comに設定します。説明DLF パブリックエンドポイントを使用することもできます。例えば、リージョンが China (Hangzhou) の場合、dlf.endpoint を
dlf.cn-hangzhou.aliyuncs.comに設定します。iceberg.catalog.<catalog-name>.dlf.region-id
DLF サービスのリージョン ID。
このリージョンが dlf.endpoint で指定したものと一致していることを確認してください。