코드 예: Apache Spark™

이 섹션에서는 Snowflake Open Catalog에서 Apache Spark™를 사용하여 다음 작업을 수행하기 위한 코드 예를 제공합니다.

  • 서비스 연결 구성하기

  • 카탈로그 사용하기

  • 카탈로그 나열하기

  • 네임스페이스 나열하기

  • 네임스페이스 만들기

  • 네임스페이스 사용하기

  • 네임스페이스 삭제하기

  • 테이블 만들기

  • 테이블 쿼리하기

  • 테이블 속성 표시하기

  • 테이블 나열하기

  • 테이블 삭제하기

필수 권한

코드 예에 포함된 명령을 수행하려면 Spark를 Open Catalog에 연결하는 데 사용하는 서비스 주체에 다음 권한을 부여해야 합니다.

명령

필수 권한

네임스페이스 표시하기

NAMESPACE_LIST

네임스페이스 만들기

NAMESPACE_CREATE

네임스페이스 사용하기

NAMESPACE_READ_PROPERTIES

테이블 표시하기

TABLE_LIST

테이블 생성 또는 바꾸기

  • TABLE_WRITE_DATA
  • TABLE_CREATE

네임스페이스 삭제하기

NAMESPACE_DROP

테이블 삭제

TABLE_DROP

테이블에 삽입하기

TABLE_WRITE_DATA

테이블에서 선택하기

TABLE_READ_DATA

서비스 연결 구성하기

Spark에서 서비스 연결을 구성하는 예제 섹션을 참조하십시오.

카탈로그 사용하기

catalog1 카탈로그를 사용합니다.

spark.sql("use catalog1").show()
Copy

카탈로그 나열하기

연결된 카탈로그를 나열합니다.

spark.sql("show catalogs").show()
Copy

네임스페이스 나열하기

연결된 카탈로그의 네임스페이스를 나열합니다.

spark.sql("show namespaces").show()
Copy

네임스페이스 만들기

네임스페이스 namespace1 을 생성합니다.

spark.sql("CREATE NAMESPACE namespace1")
Copy

네임스페이스 사용하기

네임스페이스 namespace1 을 사용합니다.

spark.sql("use namespace1").show()
Copy

네임스페이스 삭제하기

카탈로그에서 네임스페이스 namespace1 을 삭제합니다.

spark.sql("DROP NAMESPACE namespace1")
Copy

테이블 만들기

상위 네임스페이스 namespace1 아래에 customers 테이블을 만듭니다.

spark.sql ("use namespace1");
spark.sql("CREATE OR REPLACE TABLE customers (id int, custnum int) using iceberg")
Copy

테이블 쿼리하기

customers 테이블을 쿼리합니다.

spark.sql ("use namespace1");
spark.sql("SELECT * FROM customers").show()
Copy

테이블 속성 표시하기

customers 테이블의 테이블 속성을 표시합니다.

spark.sql("SHOW TBLPROPERTIES customers").show(50, False)
Copy

테이블 나열하기

연결된 카탈로그의 테이블을 나열합니다.

spark.sql("show tables").show()
Copy

테이블 삭제하기

상위 네임스페이스 namespace1 아래에 customers 테이블을 삭제합니다.

spark.sql ("use namespace1");
spark.sql("DROP TABLE customers")
Copy