중요합니다
이 기능은 공개 미리보기 단계에 있습니다.
Azure Databricks는 Unity REST API 및 Apache Iceberg REST 카탈로그를 사용하여 Unity 카탈로그 테이블에 대한 액세스를 제공합니다.
메타스토어 관리자는 외부에서 액세스해야 하는 각 메타스토어에 대해 외부 데이터 액세스를 사용하도록 설정해야 합니다. 연결을 구성하는 사용자 또는 서비스 주체는 관리되는 테이블에서 읽기 또는 외부 테이블 만들기, 읽기 및 쓰기와 같은 지원되는 작업을 수행해야 하는 각 스키마에 대한 권한이 있어야 합니다 EXTERNAL USE SCHEMA .
Unity REST API는 델타 테이블에 대한 직접 읽기를 지원합니다. Iceberg REST 카탈로그는 델타 테이블에 대한 읽기 및 Iceberg 테이블에 대한 읽기 및 쓰기를 지원합니다. 외부 시스템을 사용하여 Databricks 데이터에 액세스하는 방법을 참조하세요
메타스토어에서 외부 데이터 액세스 기능 활성화
외부 엔진이 메타스토어의 데이터에 액세스할 수 있도록 하려면 metastore 관리자가 메타스토어에 대한 외부 데이터 액세스를 사용하도록 설정해야 합니다. 이 옵션은 권한 없는 외부 액세스를 방지하기 위해 기본적으로 사용하지 않도록 설정됩니다.
외부 데이터 액세스를 사용하도록 설정하려면 다음을 수행합니다.
- 메타스토어에 연결된 Azure Databricks 작업 영역에서
을 클릭합니다.카탈로그.
-
을 클릭합니다. 카탈로그 창 맨 위에 있는 기어 아이콘을 클릭하고 메타스토어를 선택합니다.
- 세부 정보 탭에서, 외부 데이터 액세스사용하도록 설정합니다.
메모
이러한 옵션은 충분히 권한이 있는 사용자에 대해서만 표시됩니다. 이러한 옵션이 표시되지 않으면 메타스토어에 대한 외부 데이터 액세스를 사용하도록 설정할 수 있는 권한이 없습니다.
주 Unity 카탈로그 권한 부여
Azure Databricks에 연결하는 외부 클라이언트는 충분히 권한 있는 보안 주체의 권한 부여가 필요합니다.
Azure Databricks는 인증을 위해 OAuth 및 PAT(개인용 액세스 토큰)를 지원합니다. Azure Databricks 리소스에 대한 액세스 권한 부여를 참조하세요.
임시 자격 증명을 요청하는 주체는 다음을 갖추어야 합니다.
포함하는 스키마 또는 해당 부모 카탈로그에 대한
EXTERNAL USE SCHEMA권한입니다.이 권한은 항상 명시적으로 부여되어야 합니다. 부모 카탈로그 소유자만 부여할 수 있습니다. 우발적인 반출을 방지하기 위해
ALL PRIVILEGESEXTERNAL USE SCHEMA권한을 포함하지 않으며 스키마 소유자는 기본적으로 이 권한을 갖지 않습니다.테이블에 대한
SELECT권한, 부모 카탈로그에 대한USE CATALOG권한, 그리고 부모 스키마에 대한USE SCHEMA권한.외부 테이블을 만드는 경우 보안 주체는 스키마에 대한 권한과 대상 외부 위치에 대한 권한과 권한을 모두
CREATE TABLECREATE EXTERNAL TABLE가져야EXTERNAL USE LOCATION합니다.EXTERNAL USE LOCATION는 항상 명시적으로 부여되어야 합니다. 외부 위치에 대한 권한이 있는MANAGE사용자만 권한을 부여할 수 있습니다. 우발적인 반ALL PRIVILEGES출을 방지하기 위해 권한은 포함하지EXTERNAL USE LOCATION않으며 위치 소유자는 기본적으로 이 권한을 갖지 않습니다.
다음 예제 구문에서는 사용자에게 EXTERNAL USE SCHEMA 부여하는 방법을 보여 줍니다.
GRANT EXTERNAL USE SCHEMA ON SCHEMA catalog_name.schema_name TO `user@company.com`
다음 예제 구문에서는 사용자에게 EXTERNAL USE LOCATION 부여하는 방법을 보여 줍니다.
GRANT EXTERNAL USE LOCATION ON EXTERNAL LOCATION external_location_name TO `user@company.com`
사용자에게 스키마에서 원하는 모든 테이블을 읽을 수 있는 권한이 있다고 가정하면 추가 권한이 필요하지 않습니다. 테이블을 읽을 수 있는 추가 권한을 부여해야 하는 경우 Unity 카탈로그 권한 및보안 개체를 참조하세요.