テーブルの詳細を取得する

テーブルの詳細を表示すると、レイクハウス ランタイム カタログの Apache Iceberg テーブルの基盤となるスキーマ、テーブル プロパティ、構成メタデータが表示されます。

認証情報ベンディング モードでは、クエリ エンジンは短期間のアクセス認証情報も取得し、IAM ストレージ権限を直接必要とせずに、基盤となる Cloud Storage ファイルと安全にやり取りします。

テーブルの詳細は、 Google Cloud コンソール、Spark と Trino の SQL DESCRIBE コマンド、または REST API を使用して確認できます。

始める前に

  1. Google Cloud プロジェクトに対して課金が有効になっていることを確認します

  2. BigLake API を有効にします。

    API を有効にするために必要なロール

    API を有効にするには、serviceusage.services.enable 権限を含む Service Usage 管理者 IAM ロール(roles/serviceusage.serviceUsageAdmin)が必要です。詳しくは、ロールを付与する方法をご覧ください。

    API の有効化

  3. Apache Iceberg REST カタログのエンドポイントを使用して、Lakehouse ランタイム カタログを設定します。

必要なロール

テーブルの詳細を表示するために必要な権限を取得するには、プロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。

  • すべて: BigLake 閲覧者(roles/biglake.viewer)- プロジェクト

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

テーブルの機能とサポート

Lakehouse ランタイム カタログでテーブルを使用する場合は、さまざまなテーブル タイプとそのオプトイン機能を理解すると便利です。Apache Iceberg テーブルの使用について詳しくは、Apache Iceberg テーブルの概要をご覧ください。

サポートされている Iceberg テーブル

Apache Iceberg V2(一般提供版)テーブルと V3(プレビュー版)テーブルのみがサポートされています。Iceberg V1 テーブルはサポートされていません。既存の V1 テーブルをアップグレードするには、Iceberg V1 テーブルを V2 にアップグレードするをご覧ください。

テーブルの詳細を取得する

テーブルのスキーマとプロパティを調べます。

コンソール

  1. Google Cloud コンソールで、[Lakehouse] に移動します。

    [レイクハウス] に移動

  2. 既存のカタログを選択するか、まだ作成していない場合は新しいカタログを作成します。

  3. [Namespace details] テーブルで、検査するテーブルの名前をクリックします。

  4. [テーブルの詳細] ページで、テーブルのスキーマ、パーティション仕様、メタデータ プロパティを確認します。

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: カタログ Namespace の名前。

BigQuery

BigQuery から Lakehouse ランタイム カタログ内の Apache Iceberg テーブルのテーブルの詳細とメタデータ プロパティを表示するには、BigQuery コンソールでテーブルの詳細を確認するか、bq show コマンドを使用します。

REST

REST API を使用してテーブルのメタデータを取得するには、GetIcebergTable エンドポイントに GET リクエストを行います。

GET /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces/NAMESPACE_NAME/tables/TABLE_NAME

認証情報ベンディング モードで有効期間の短いテーブル認証情報を読み込むには、LoadIcebergTableCredentials エンドポイントに GET リクエストを送信します。

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: カタログ Namespace の名前。
  • TABLE_NAME: Iceberg テーブルの名前。

次のステップ