다음을 통해 공유


Unity 카탈로그에서 관리되는 스토리지 위치 지정

관리되는 스토리지 위치는 관리되는 테이블 및 관리되는 볼륨에 대한 데이터를 저장하기 위한 클라우드 개체 스토리지의 위치를 지정합니다.

관리되는 스토리지 위치를 메타스토어, 카탈로그 또는 스키마와 연결할 수 있습니다. 계층 구조의 하위 수준에서 관리되는 스토리지 위치는 관리되는 테이블 또는 관리되는 볼륨을 만들 때 더 높은 수준에서 정의된 스토리지 위치를 재정의합니다.

Databricks는 메타스토어 수준 및 스키마 수준을 옵션으로 사용하여 논리 데이터 격리를 위해 카탈로그 수준에서 관리되는 스토리지를 할당하는 것이 좋습니다.

Unity 카탈로그에 사용하도록 설정된 새 작업 영역은 메타스토어 수준 관리 스토리지 위치 없이 자동으로 만들어집니다. 그러나 개인 스테이징 위치를 Databricks 파트너로 사용하는 것과 같은 일부 기능에는 메타스토어 수준 스토리지가 필요합니다. Unity 카탈로그의 자동 사용, 데이터 거버넌스 및 데이터 격리 구성 요소Unity 카탈로그 메타스토어 만들기를 참조하세요.

관리되는 스토리지 위치란?

관리되는 스토리지 위치에는 다음과 같은 속성이 있습니다.

  • 관리되는 테이블 및 관리되는 볼륨은 관리되는 스토리지 위치에 데이터 및 메타데이터 파일을 저장합니다.
  • 관리되는 스토리지 위치는 외부 테이블 또는 외부 볼륨과 겹칠 수 없습니다.

다음 표에서는 관리되는 스토리지 위치가 선언되고 Unity 카탈로그 개체와 연결되는 방법을 설명합니다.

연결된 Unity 카탈로그 개체 설정하는 방법 외부 위치와 관계
메타 저장소 메타스토어를 만드는 동안 계정 관리자가 구성합니다. 외부 위치와 겹칠 수 없습니다.
카탈로그 키워드를 사용하여 카탈로그를 MANAGED LOCATION 만드는 동안 지정됩니다. 외부 위치 내에 포함되어야 합니다.
스키마 키워드를 사용하여 스키마를 만드는 동안 지정됩니다 MANAGED LOCATION . 외부 위치 내에 포함되어야 합니다.

관리되는 테이블 및 관리되는 볼륨에 대한 데이터 및 메타데이터를 저장하는 관리되는 스토리지 위치는 다음 규칙을 사용합니다.

  • 포함된 스키마에 관리되는 위치가 있는 경우 데이터는 스키마 관리 위치에 저장됩니다.
  • 포함된 스키마에 관리되는 위치가 없지만 카탈로그에 관리되는 위치가 있는 경우 데이터는 카탈로그 관리 위치에 저장됩니다.
  • 포함된 스키마나 포함된 카탈로그에 관리되는 위치가 없는 경우 데이터는 메타스토어 관리 위치에 저장됩니다.

Unity 카탈로그는 위치 거버넌스의 겹침을 방지합니다. Unity 카탈로그에서 관리하는 데이터에 대한 경로는 어떻게 작동합니까?를 참조하세요.

관리되는 스토리지 위치, 스토리지 루트 및 스토리지 위치

카탈로그 또는 스키마에 MANAGED LOCATION 대해 지정하면 제공된 위치가 Unity 카탈로그의 스토리지 루트 로 추적됩니다. 모든 관리되는 엔터티에 고유한 위치가 있는지 확인하기 위해 Unity 카탈로그는 다음 형식을 사용하여 지정된 위치에 해시된 하위 디렉터리를 추가합니다.

Object Path
스키마 <storage-root>/__unitystorage/schemas/00000000-0000-0000-0000-000000000000
카탈로그 <storage-root>/__unitystorage/catalogs/00000000-0000-0000-0000-000000000000

관리되는 스토리지 위치에 대한 정규화된 경로는 Unity 카탈로그의 스토리지 위치 로 추적됩니다.

여러 스키마 및 카탈로그에 대해 동일한 관리 스토리지 위치를 지정할 수 있습니다.

필요한 권한

외부 위치에 대한 권한이 있는 CREATE MANAGED STORAGE 사용자는 카탈로그 또는 스키마를 만드는 동안 관리되는 스토리지 위치를 구성할 수 있습니다.

계정 관리자는 메타스토어 수준에서 선택적 관리 스토리지 위치를 추가할 수 있습니다.

메타스토어에 대한 관리되는 스토리지 위치 설정

metastore에 대한 관리되는 스토리지 위치를 설정하려면 기존 메타스토어에 관리되는 스토리지 추가를 참조 하세요.

카탈로그에 대한 관리되는 스토리지 위치 설정

다음 예제와 같이 카탈로그를 만드는 동안 키워드를 MANAGED LOCATION 사용하여 카탈로그의 관리되는 스토리지 위치를 설정합니다.

CREATE CATALOG <catalog-name>
MANAGED LOCATION 'abfss://<container-name>@<storage-account>.dfs.core.windows.net/<path>/<directory>';

카탈로그 탐색기를 사용하여 카탈로그의 관리되는 스토리지 위치를 설정할 수도 있습니다. 카탈로그 만들기를 참조하세요.

스키마에 대한 관리되는 스토리지 위치 설정

다음 예제와 같이 스키마를 만드는 동안 키워드를 MANAGED LOCATION 사용하여 스키마의 관리되는 스토리지 위치를 설정합니다.

CREATE SCHEMA <catalog>.<schema-name>
MANAGED LOCATION 'abfss://<container-name>@<storage-account>.dfs.core.windows.net/<path>/<directory>';

카탈로그 탐색기를 사용하여 스키마에 대한 관리되는 스토리지 위치를 설정할 수도 있습니다. 스키마 만들기를 참조 하세요.

다음 단계

Unity 카탈로그는 관리되는 테이블 및 관리되는 볼륨을 만들 때 관리되는 스토리지 위치를 자동으로 사용합니다. 관리되는 테이블 작업 및 Unity 카탈로그 볼륨이란?을 참조하세요.