テーブルを一覧表示すると、Lakehouse ランタイム カタログ内の名前空間にあるすべての登録済みテーブル エンティティを表示できます。
クエリエンジンは標準 SQL コマンドを使用してテーブルを一覧表示できます。また、REST API を使用してテーブル ID を取得することもできます。
始める前に
-
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(一般提供)テーブルと V3(プレビュー)テーブルのみがサポートされています。Iceberg V1 テーブルはサポートされていません。既存の V1 テーブルをアップグレードするには、Iceberg V1 テーブルを V2 にアップグレードするをご覧ください。
テーブルのリスト表示
テーブルを一覧表示します。
コンソール
Google Cloud コンソールで、[Lakehouse] に移動します。
既存のカタログを選択するか、まだ作成していない場合は新しいカタログを作成します。
テーブルが [Namespace の詳細] ページに表示されます。
Spark
spark.sql("SHOW TABLES").show()
読み取り/書き込みの相互運用性とテーブル管理(プレビュー)を有効にするには、TBLPROPERTIES 句にプロパティを追加します。
TBLPROPERTIES (
'gcp.biglake.bigquery-dml.enabled' = true,
'gcp.biglake.table-management.enabled' = true
)
Trino
SHOW TABLES;
読み取り/書き込みの相互運用性とテーブル管理(プレビュー)を有効にするには、WITH 句に次のプロパティを追加します。
WITH (
"gcp.biglake.bigquery-dml.enabled" = 'true',
"gcp.biglake.table-management.enabled" = 'true'
)
gcloud
gcloud を使用してテーブルを一覧表示するには、gcloud biglake iceberg tables list コマンドを実行します。
gcloud biglake iceberg tables list \ --project="PROJECT_ID" \ --catalog="CATALOG_ID" \ --namespace="NAMESPACE_NAME"
次のように置き換えます。
PROJECT_ID: 実際の Google Cloud プロジェクト ID。CATALOG_ID: カタログの ID。NAMESPACE_NAME: カタログ Namespace の名前。
BigQuery
BigQuery から Lakehouse ランタイム カタログ内の Apache Iceberg テーブルを一覧表示するには、BigQuery コンソールの [エクスプローラ] ペインで探索するか、bq ls コマンドを使用します。
REST
REST API を使用して名前空間内のテーブル識別子を一覧表示するには、ListIcebergTableIdentifiers エンドポイントに GET リクエストを行います。
GET /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces/NAMESPACE_NAME/tables
レスポンスには、指定された名前空間に登録されているテーブル識別子の JSON 配列が含まれます。
次のように置き換えます。
PROJECT_ID: 実際の Google Cloud プロジェクト ID。CATALOG_ID: カタログの ID。NAMESPACE_NAME: カタログ Namespace の名前。
次のステップ
- テーブルの詳細を取得する方法を学習する。
- テーブルをクエリする方法を学習する。