표 세부정보 가져오기

테이블 세부정보를 보면 레이크하우스 런타임 카탈로그의 Apache Iceberg 테이블에 대한 기본 스키마, 테이블 속성, 구성 메타데이터가 표시됩니다.

사용자 인증 정보 제공 모드에서 쿼리 엔진은 직접 IAM 스토리지 권한이 없어도 기본 Cloud Storage 파일과 안전하게 상호작용할 수 있도록 단기 액세스 사용자 인증 정보도 가져옵니다.

콘솔, Spark 및 Trino의 SQL DESCRIBE 명령어 또는 REST API를 사용하여 테이블 세부정보를 검사할 수 있습니다. Google Cloud

시작하기 전에

  1. 프로젝트에 결제가 사용 설정되어 있는지 확인합니다 Google Cloud .

  2. BigLake API를 사용 설정합니다.

    API 사용 설정에 필요한 역할

    API를 사용 설정하려면 serviceusage.services.enable 권한이 포함된 서비스 사용량 관리자 IAM 역할(roles/serviceusage.serviceUsageAdmin)이 필요합니다. 역할 부여 방법 알아보기

    API 사용 설정하기

  3. Apache Iceberg REST 카탈로그 엔드포인트로 레이크하우스 런타임 카탈로그를 설정합니다.

필요한 역할

테이블 세부정보를 보는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대해 다음 IAM 역할을 부여해 달라고 요청하세요.

  • 모두: BigLake 뷰어 (roles/biglake.viewer) - 프로젝트

역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.

커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.

테이블 기능 및 지원

레이크하우스 런타임 카탈로그에서 테이블을 사용할 때는 다양한 테이블 유형과 선택 기능에 대해 이해하는 것이 좋습니다. 특히 Apache Iceberg 테이블 사용에 대한 자세한 내용은 Apache Iceberg 테이블 개요를 참조하세요.

지원되는 Iceberg 테이블

Apache Iceberg V2 (GA) 및 V3 (미리보기) 테이블만 지원됩니다. Iceberg V1 테이블은 지원되지 않습니다. 기존 V1 테이블을 업그레이드하려면 Iceberg V1 테이블을 V2로 업그레이드하기를 참조하세요.

테이블 세부정보 가져오기

테이블 스키마 및 속성을 검사합니다.

Console

  1. 콘솔에서 Lakehouse 로 이동합니다. Google Cloud

    레이크하우스로 이동

  2. 기존 카탈로그를 선택하거나 카탈로그가 없는 경우 카탈로그를 만듭니다.

  3. 네임스페이스 세부정보 테이블에서 검사할 테이블의 이름을 클릭합니다.

  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: 프로젝트 ID입니다. Google Cloud
  • CATALOG_ID: 카탈로그의 ID입니다.
  • NAMESPACE_NAME: 카탈로그 네임스페이스의 이름입니다.

BigQuery

BigQuery에서 레이크하우스 런타임 카탈로그의 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

사용자 인증 정보 제공 모드에서 단기 테이블 사용자 인증 정보를 로드하려면 GET 엔드포인트에 LoadIcebergTableCredentials 요청을 합니다.

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

다음을 바꿉니다.

  • PROJECT_ID: 프로젝트 ID입니다. Google Cloud
  • CATALOG_ID: 레이크하우스 런타임 카탈로그의 ID입니다.
  • NAMESPACE_NAME: 카탈로그 네임스페이스의 이름입니다.
  • TABLE_NAME: Iceberg 테이블의 이름입니다.

다음 단계