기본 카탈로그 관리
이 문서에서는 기본 Unity 카탈로그 카탈로그를 소개하고, 기본값으로 사용할 카탈로그를 결정하는 방법을 설명하고, 변경하는 방법을 보여 줍니다.
Unity 카탈로그의 기본 카탈로그란?
기본 카탈로그는 Unity 카탈로그에 대해 사용하도록 설정된 각 작업 영역에 대해 구성됩니다. 기본 카탈로그를 사용하면 카탈로그를 지정하지 않고도 데이터 작업을 수행할 수 있습니다. 데이터 작업을 수행할 때 최상위 카탈로그 이름을 생략하면 기본 카탈로그가 사용됩니다.
작업 영역 관리자는 관리자 설정 UI를 사용하여 기본 카탈로그를 보거나 전환할 수 있습니다. Spark 구성을 사용하여 클러스터에 대한 기본 카탈로그를 설정할 수도 있습니다.
카탈로그를 지정하지 않는 명령(예: GRANT CREATE TABLE ON SCHEMA myschema TO mygroup
)은 카탈로그에 대해 다음 순서로 평가됩니다.
- 세션에 대한 카탈로그는
USE CATALOG
문을 사용하거나 JDBC 설정을 통해 설정됩니까? - 클러스터에 Spark 설정
spark.databricks.sql.initial.catalog.namespace
이 되어 있나요? - 클러스터에 대한 작업 영역 기본 카탈로그 집합이 있나요?
Unity 카탈로그를 사용하는 경우의 기본 카탈로그 구성
처음에 작업 영역에 구성된 기본 카탈로그는 작업 영역이 Unity 카탈로그에 사용하도록 설정된 방법에 따라 달라집니다.
- Unity 카탈로그에 대해 자동으로 사용하도록 설정된 일부 작업 영역의 경우 작업 영역 카탈로그 기본 카탈로그로 설정되었습니다. Unity 카탈로그 자동 사용을참조하세요.
- 다른 모든 작업 영역의 경우
hive_metastore
카탈로그가 기본 카탈로그로 설정되었습니다.
Hive 메타스토어에서 Unity 카탈로그로 마이그레이션하는 경우 Hive 메타스토어를 참조하는 기존 코드에 영향을 주지 않도록 기본 카탈로그를 hive_metastore
설정할 수 있습니다.
기본 카탈로그 변경
작업 영역 관리자는 작업 영역의 기본 카탈로그를 변경할 수 있습니다. 컴퓨팅 리소스를 만들거나 편집할 수 있는 권한이 있는 사용자는 컴퓨팅 리소스에 대해 다른 기본 카탈로그를 설정할 수 있습니다.
Warning
기본 카탈로그를 변경하면 카탈로그에 의존하는 기존 데이터 작업이 중단됩니다.
작업 영역에 대해 다른 기본 카탈로그를 구성하려면 다음을 수행합니다.
- 작업 영역 관리자로 작업 영역에 로그인합니다.
- 작업 영역의 위쪽 표시줄에서 사용자 이름을 클릭하고 드롭다운에서 관리자 설정 선택합니다.
- 고급 탭을 클릭합니다.
- 작업 영역 행의
기본 카탈로그에서 카탈로그 이름을 입력하고 저장을 클릭합니다.
변경 내용을 적용하려면 SQL 웨어하우스 및 클러스터를 다시 시작합니다. 새로 시작하고 다시 시작한 모든 SQL 웨어하우스 및 클러스터는 이 카탈로그를 작업 영역 기본값으로 사용합니다.
클러스터에서 다음 Spark 구성을 설정하여 특정 클러스터의 기본 카탈로그를 재정의할 수도 있습니다. SQL 웨어하우스에는 이 방법을 사용할 수 없습니다.
spark.databricks.sql.initial.catalog.name
지침은 Spark 구성을 참조하세요.
현재 기본 카탈로그 보기
작업 영역에 대한 현재 기본 카탈로그를 얻으려면 Notebook 또는 SQL 편집기 쿼리에서 SQL 문을 사용할 수 있습니다. 작업 영역 관리자는 관리자 설정 UI를 사용하여 기본 카탈로그를 가져올 수 있습니다.
관리자 설정
- 작업 영역 관리자로 작업 영역에 로그인합니다.
- 작업 영역의 위쪽 표시줄에서 사용자 이름을 클릭하고 드롭다운에서 관리자 설정 선택합니다.
- 고급 탭을 클릭합니다.
- 작업 영역 행의
기본 카탈로그에서 카탈로그 이름을 봅니다.
SQL
SQL 웨어하우스 또는 Unity 카탈로그에 호환되는 클러스터에서 실행 중인 Notebook 또는 SQL 편집기의 쿼리 내에서 다음 명령을 실행합니다. 작업 영역 기본 카탈로그는 세션에서 USE CATALOG
문 또는 JDBC 설정이 설정되지 않고 클러스터에 대해 spark.databricks.sql.initial.catalog.namespace
구성이 설정되지 않는 한 반환됩니다.
SELECT current_catalog();