テーブルの詳細を表示すると、Lakehouse ランタイム カタログ 内の Apache Iceberg テーブルの基盤となるスキーマ、テーブル プロパティ、構成メタデータが表示されます。
認証情報ベンディング モードでは、クエリエンジンは、直接 IAM ストレージ権限を必要とせずに、基盤となる Cloud Storage ファイルと安全にやり取りするための有効期間の短いアクセス認証情報も取得します。
テーブルの詳細は、 Google Cloud コンソール、Spark と Trino の SQL DESCRIBE
コマンド、または REST API を使用して確認できます。
始める前に
-
BigLake API を有効にします。
API を有効にするために必要なロール
API を有効にするには、
serviceusage.services.enable権限が必要です。プロジェクトを作成した場合は、オーナーロール(roles/owner)を介してこの権限が付与されている可能性があります。それ以外の場合は、Service Usage 管理者ロール(roles/serviceusage.serviceUsageAdmin)を介してこの権限を取得できます。ロールを付与する方法をご覧ください。 - Apache Iceberg REST カタログ エンドポイントを使用して Lakehouse ランタイム カタログを設定します。
必要なロール
テーブルの詳細を表示するために必要な権限を取得するには、プロジェクトに対する次の IAM ロールを付与してもらうよう管理者に依頼してください。
-
すべて:
BigLake 閲覧者(
roles/biglake.viewer) - プロジェクト
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタム ロールや他の事前定義 ロールから取得することもできます。
テーブルの機能とサポート
Lakehouse ランタイム カタログでテーブルを使用する場合は、さまざまなテーブルタイプとそのオプトイン 機能を理解して おくと便利です。Apache Iceberg テーブルの使用について詳しくは、Apache Iceberg テーブルの概要をご覧ください。
サポートされている Iceberg テーブル
Apache Iceberg V2(GA)テーブルと V3(プレビュー)テーブルのみがサポートされています。Iceberg V1 テーブルはサポートされていません。既存の V1 テーブルをアップグレードするには、Iceberg V1 テーブルを V2 にアップグレードするをご覧ください。
テーブルの詳細を取得する
テーブルのスキーマとプロパティを確認します。
コンソール
コンソールで、[Lakehouse] に移動します。 Google Cloud
既存のカタログを選択します。カタログがない場合は、作成します。
[Namespace details] テーブルで、確認するテーブルの名前をクリックします。
[Table details] ページで、テーブルのスキーマ、パーティション仕様、メタデータ プロパティを確認します。
Spark
spark.sql("DESCRIBE EXTENDED NAMESPACE_NAME.TABLE_NAME").show()
読み取り/書き込みの相互運用性とテーブル管理(プレビュー)を有効にするには、次のプロパティを TBLPROPERTIES 句に追加します。
TBLPROPERTIES (
'gcp.biglake.bigquery-dml.enabled' = true,
'gcp.biglake.table-management.enabled' = true
)
Trino
DESCRIBE SCHEMA_NAME.TABLE_NAME;
読み取り/書き込みの相互運用性とテーブル管理(プレビュー)を有効にするには、次のプロパティを WITH 句に追加します。
WITH (
"gcp.biglake.bigquery-dml.enabled" = 'true',
"gcp.biglake.table-management.enabled" = 'true'
)
gcloud
gcloud を使用してテーブルを記述するには、gcloud biglake iceberg tables describe コマンドを実行します。
gcloud biglake iceberg tables describe TABLE_NAME \ --project="PROJECT_ID" \ --catalog="CATALOG_ID" \ --namespace="NAMESPACE_NAME"
次のように置き換えます。
TABLE_NAME: Iceberg テーブルの名前。PROJECT_ID: 実際の Google Cloud プロジェクト ID。CATALOG_ID: カタログの ID。NAMESPACE_NAME: カタログの名前空間の名前。
BigQuery
BigQuery から Lakehouse ランタイム カタログ内の Apache Iceberg テーブルのテーブルの詳細とメタデータ プロパティを表示するには、BigQuery コンソールでテーブルの詳細を確認するか、bq show コマンドを使用します。
REST
REST API を使用してテーブル メタデータを取得するには、GET リクエストを
GetIcebergTable エンドポイントに送信します。
GET /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces/NAMESPACE_NAME/tables/TABLE_NAME
認証情報ベンディング モードで有効期間の短いテーブル認証情報を読み込むには、
GET リクエストを
LoadIcebergTableCredentials エンドポイントに送信します。
GET /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces/NAMESPACE_NAME/tables/TABLE_NAME/credentials
次のように置き換えます。
PROJECT_ID: 実際の Google Cloud プロジェクト ID。CATALOG_ID: Lakehouse ランタイム カタログの ID。NAMESPACE_NAME: カタログの名前空間の名前。TABLE_NAME: Iceberg テーブルの名前。