Apache Iceberg REST カタログ エンドポイントでテーブルを作成して管理する場合は、次のロケーション、権限、セキュリティ強化ルールが適用されます。
テーブルの場所
テーブルパスは、親名前空間パス(gs://{namespace_path}/.../{table_name} など)内にネストする必要があります。この制約は、セキュリティとカタログの強化に役立つように適用されます。
テーブルパスの動作の変更: 結果のテーブルの場所(metadata/ フォルダが作成される場所)には、競合を回避してセキュリティを強化するために、ランダムな文字列が接尾辞として自動的に付加されます。
- 特定のロケーションが指定されていない場合、結果のロケーションは
gs://{namespace_path}/{table_name}/{random_suffix}になります。 - 特定のロケーション(
gs://{namespace_path}/.../{table_name}など)が指定されている場合、結果のロケーションはgs://{namespace_path}/.../{table_name}/{random_suffix}になります。
テーブル登録の権限
複数バケット(bl://)カタログ(推奨)では、テーブルを登録するために biglake.tables.register 権限が必要です。この権限は BigLake 管理者(roles/biglake.admin)ロールに制限されており、管理者のみがテーブル登録を実行できます。
単一バケット(gs://)カタログでは、現在もテーブル登録に biglake.tables.create が適用されています。