メインコンテンツまでスキップ
バージョン: 4.x

Iceberg JDBC カタログ

この文書では、CREATE CATALOG文を通じてJDBCインターフェースを使用してIceberg Catalogメタデータサービスに接続およびアクセスする際にサポートされるパラメータについて説明します。

Note

これは実験的機能で、バージョン4.1.0以降でサポートされています。

パラメータ概要

Property Nameデスクリプションデフォルト値Required
iceberg.jdbc.uriJDBC接続URIを指定-Yes
iceberg.jdbc.userJDBC接続ユーザー名-Yes
iceberg.jdbc.passwordJDBC接続パスワード-Yes
warehouseicebergウェアハウスを指定-Yes
iceberg.jdbc.init-catalog-tables初回使用時にCatalog関連のTable構造を自動的に初期化するかどうかtrueNo
iceberg.jdbc.schema-versionJDBC Catalogで使用されるスキーマバージョン、V0V1をサポートV0No
iceberg.jdbc.strict-mode厳密モードを有効にするかどうか、メタデータのより厳密な検証を実行falseNo
iceberg.jdbc.driver_classJDBCドライバークラス名、例:org.postgresql.Drivercom.mysql.cj.jdbc.Driverなど-No
iceberg.jdbc.driver_urlJDBCドライバーJARファイルへのパス-No

注意:

  1. Iceberg JDBC CatalogはPostgreSQL、MySQL、SQLiteなどの様々なリレーショナルデータベースをバックエンドストレージとしてサポートします。

  2. JDBCドライバーJARファイルがアクセス可能であることを確認してください。iceberg.jdbc.driver_urlでドライバーの場所を指定できます。

設定例

PostgreSQLをメタデータストレージとして使用

PostgreSQLデータベースを使用してIcebergメタデータを保存:

CREATE CATALOG iceberg_jdbc_postgresql PROPERTIES (
'type' = 'iceberg',
'iceberg.catalog.type' = 'jdbc',
'iceberg.jdbc.uri' = 'jdbc:postgresql://127.0.0.1:5432/iceberg_db',
'iceberg.jdbc.user' = 'iceberg_user',
'iceberg.jdbc.password' = 'password',
'iceberg.jdbc.init-catalog-tables' = 'true',
'iceberg.jdbc.schema-version' = 'V1',
'iceberg.jdbc.driver_class' = 'org.postgresql.Driver',
'iceberg.jdbc.driver_url' = '<jdbc_driver_jar>',
'warehouse' = 's3://bucket/warehouse',
's3.access_key' = '<ak>',
's3.secret_key' = '<sk>',
's3.endpoint' = 'https://s3.us-east-1.amazonaws.com',
's3.region' = 'us-east-1'
);

MySQL as Metadata Storage

MySQL データベースを使用して Iceberg メタデータを保存する:

CREATE CATALOG iceberg_jdbc_mysql PROPERTIES (
'type' = 'iceberg',
'iceberg.catalog.type' = 'jdbc',
'iceberg.jdbc.uri' = 'jdbc:mysql://127.0.0.1:3306/iceberg_db',
'iceberg.jdbc.user' = 'iceberg_user',
'iceberg.jdbc.password' = 'password',
'iceberg.jdbc.init-catalog-tables' = 'true',
'iceberg.jdbc.schema-version' = 'V1',
'iceberg.jdbc.driver_class' = 'com.mysql.cj.jdbc.Driver',
'iceberg.jdbc.driver_url' = '<jdbc_driver_jar>'
'warehouse' = 's3://bucket/warehouse',
's3.access_key' = '<ak>',
's3.secret_key' = '<sk>',
's3.endpoint' = 'https://s3.us-east-1.amazonaws.com',
's3.region' = 'us-east-1'
);

メタデータストレージとしてのSQLite

Icebergメタデータを格納するためのSQLiteデータベースの使用(テスト環境に適しています):

CREATE CATALOG iceberg_jdbc_sqlite PROPERTIES (
'type' = 'iceberg',
'iceberg.catalog.type' = 'jdbc',
'iceberg.jdbc.uri' = 'jdbc:sqlite:/tmp/iceberg_catalog.db',
'iceberg.jdbc.init-catalog-tables' = 'true',
'iceberg.jdbc.schema-version' = 'V1',
'iceberg.jdbc.driver_class' = 'org.sqlite.JDBC',
'iceberg.jdbc.driver_url' = '<jdbc_driver_jar>'
'warehouse' = 's3://bucket/warehouse',
's3.access_key' = '<ak>',
's3.secret_key' = '<sk>',
's3.endpoint' = 'https://s3.us-east-1.amazonaws.com',
's3.region' = 'us-east-1'
);