Spark에서 메타스토어 테이블 만들기 및 쿼리

Spark와 같은 오픈소스 엔진을 사용하여 BigQuery 노트북에서 Apache Spark Iceberg 테이블을 쿼리할 수 있습니다. 이러한 테이블은 BigQuery 메타스토어에 저장된 메타데이터가 있는 일반 Iceberg 테이블입니다. BigQuery와 Spark에서 동일한 테이블을 쿼리할 수 있습니다.

시작하기 전에

고려사항

  • 현재 Iceberg 테이블만 지원됩니다.
  • 쿼리를 실행할 때 네임스페이스 및 데이터베이스 이름을 BigQuery 데이터 세트 이름으로 매핑해야 합니다. 다음 표에는 사용할 수 있는 관련 키 매핑이 나와 있습니다.

    오픈소스 BigQuery
    네임스페이스 BigQuery 데이터 세트
    데이터베이스 BigQuery 데이터 세트
    테이블 (파티션이 있거나 없는 테이블) BigQuery 테이블

테이블 보기 및 쿼리

Spark에서 BigQuery 리소스를 만든 후Google Cloud 콘솔에서 리소스를 보고 쿼리할 수 있습니다. 다음 예는 대화형 Spark를 사용하여 메타스토어 테이블을 쿼리하는 일반적인 단계를 보여줍니다.

  1. 맞춤 Iceberg 카탈로그를 사용합니다.

    USE `CATALOG_NAME`;

    다음을 바꿉니다.

    • CATALOG_NAME: SQL 작업과 함께 사용하는 Spark 카탈로그의 이름입니다.
  2. 네임스페이스를 만듭니다.

    CREATE NAMESPACE IF NOT EXISTS NAMESPACE_NAME;

    다음을 바꿉니다.

    • NAMESPACE_NAME: Spark 테이블을 참조하는 네임스페이스 이름입니다.
  3. 생성된 네임스페이스를 사용합니다.

    USE NAMESPACE_NAME;
  4. Iceberg 테이블을 만듭니다.

    CREATE TABLE TABLE_NAME (id int, data string) USING ICEBERG;

    다음을 바꿉니다.

    • TABLE_NAME: Iceberg 테이블의 이름입니다.
  5. 표 행을 삽입합니다.

    INSERT INTO TABLE_NAME VALUES (1, "first row");
  6. Google Cloud 콘솔을 사용하여 다음 중 하나를 실행합니다.

     SELECT * FROM `TABLE_NAME`;

다음 단계