Delta Sharing이란?
이 문서는 Azure Databricks에서의 Delta Sharing을 소개합니다. Delta Sharing은 데이터와 AI 자산을 안전하게 공유할 수 있는 플랫폼으로, 조직 외부 사용자와 Azure Databricks 사용자뿐만 아니라 Databricks를 사용하지 않는 사용자와도 데이터를 공유할 수 있습니다. 델타 공유는 데이터 제품을 교환하기 위한 공개 포럼인 Databricks Marketplace와 여러 당사자가 중요한 엔터프라이즈 데이터에 대해 함께 작업할 수 있는 안전하고 개인 정보 보호 환경인 클린 룸의 기초이기도 합니다.
Delta Sharing은 다른 플랫폼에서 Delta 테이블을 공유하는 데 사용할 수 있는 오픈 소스 프로젝트로도 사용할 수 있습니다.
참고 항목
델타 공유를 사용하여 공유된 데이터에 액세스하는 방법을 알아보려면 델타 공유(받는 사람용)를 사용하여 공유된 Access 데이터를 참조하세요.
Delta Sharing은 어떻게 작동하나요?
Delta Sharing은 사용하는 컴퓨팅 플랫폼에 관계없이 다른 조직과 안전하게 데이터를 공유하기 위해 Databricks에서 개발한 개방형 프로토콜입니다.
델타 공유를 사용하여 데이터를 공유하는 세 가지 방법이 있습니다.
Databricks-to-Databricks 공유 프로토콜: Unity 카탈로그가 활성화된 작업 공간에서 Unity 카탈로그가 활성화된 다른 Databricks 작업 공간의 사용자와 데이터 및 AI 자산을 공유할 수 있습니다.
이 방법은 Azure Databricks에 기본 제공되는 델타 공유 서버를 사용합니다. Notebook 공유, Unity 카탈로그 볼륨 공유, Unity 카탈로그 AI 모델 공유, Unity 카탈로그 데이터 거버넌스, 감사 및 공급자와 받는 사람 모두에 대한 사용 추적을 포함하여 다른 프로토콜에서 지원되지 않는 일부 델타 공유 기능을 지원합니다. Unity 카탈로그와 통합하면 공급자와 받는 사람 모두에 대한 설정 및 거버넌스가 간소화되고 성능이 향상됩니다.
Delta Sharing Databricks 간 프로토콜을 사용하여 데이터 공유(공급자의 경우)를 참조하세요.
Databricks 오픈 공유 프로토콜을 사용하면 Unity 카탈로그 지원 Databricks 작업 영역에서 관리하는 테이블 형식 데이터를 모든 컴퓨팅 플랫폼의 사용자와 공유할 수 있습니다.
이 방법은 Azure Databricks에 기본 제공되는 Delta Sharing 서버를 사용하며, Unity 카탈로그를 사용하여 데이터를 관리하고 Databricks를 사용하지 않거나 Unity 카탈로그가 활성화된 Databricks 작업 영역에 접근할 수 없는 사용자와 데이터를 공유하려는 경우에 유용합니다. 공급자 쪽에서 Unity 카탈로그와 통합하면 공급자에 대한 설정 및 거버넌스가 간소화됩니다.
Databricks 여부와 관계없이 모든 플랫폼에서 모든 플랫폼으로 공유할 수 있는 오픈 소스 델타 공유 서버의 고객 관리형 구현입니다.
Azure Databricks 설명서에는 자체 델타 공유 서버 설정에 대한 지침이 포함되지 않습니다. github.com/delta-io/delta-sharing을 참조하세요.
공유, 공급자 및 수신자
Azure Databricks에서 Delta Sharing의 기본 개념은 공유, 공급자 및 수신자입니다.
공유란?
델타 공유에서 공유는 공급자가 한 명 이상의 수신자와 공유하고자 하는 테이블 및 테이블 파티션의 읽기 전용 컬렉션입니다. 받는 사람이 Unity 카탈로그가 활성화된 Databricks 작업 영역을 사용하는 경우, Notebook 파일, 보기(행 및 열 수준에서 액세스를 제한하는 동적 보기 포함), Unity 카탈로그 볼륨 및 Unity 카탈로그 모델을 공유에 포함할 수도 있습니다.
언제든지 공유에서 테이블, 뷰, 볼륨, 모델 및 Notebook 파일을 추가하거나 제거할 수 있으며, 공유에 대한 데이터 수신자 액세스 권한을 할당하거나 취소할 수 있습니다.
Unity 카탈로그가 활성화된 Azure Databricks 작업 영역에서의 공유란 Unity 카탈로그에 등록된 보안 개체입니다. Unity 카탈로그 메타스토어에서 공유를 제거하면 해당 공유의 모든 수신자가 해당 공유에 액세스할 수 없게 됩니다.
Delta 공유에 대한 공유 만들기 및 관리를 참조하세요.
공급자란?
공급자는 수신자와 데이터를 공유하는 엔터티입니다. 공급자로서 기본 제공 Databricks Delta Sharing 서버를 활용하고 Unity 카탈로그를 사용하여 공유 및 수신자를 관리하려면 Unity 카탈로그가 활성화된 하나 이상의 Azure Databricks 작업 영역이 필요합니다. 기존의 모든 작업 영역을 Unity 카탈로그로 마이그레이션할 필요는 없습니다. Delta Sharing의 요구 사항에 맞게 Unity 카탈로그가 활성화된 새 작업 영역을 만들면 됩니다.
받는 사람이 Unity 카탈로그가 활성화된 Databricks 작업 영역에 있는 경우 공급자는 공급자 조직을 나타내고 해당 조직을 공유 집합과 연결하는 Unity 카탈로그 보안 개체이기도 합니다.
수신자란?
수신자는 공급자로부터 공유를 받는 엔터티입니다. Unity카탈로그에서 공유는 조직을 나타내는 보안 개체이며, 해당 조직이 하나 이상의 공유에 액세스할 수 있는 자격 증명 또는 보안 공유 식별자를 연결합니다.
데이터 공급자(공유자)는 특정 Unity 카탈로그 메타스토어의 수신자를 여러 명 정의할 수 있지만, 여러 메타스토어의 데이터를 특정 사용자 또는 사용자 그룹과 공유하려면 각 메타스토어의 수신자를 별도로 정의해야 합니다. 수신자는 여러 공유에 액세스할 수 있습니다.
공급자가 Unity 카탈로그 메타스토어에서 수신자를 삭제하면 해당 수신자는 이전에 액세스할 수 있었던 모든 공유에 대한 액세스 권한을 잃게 됩니다.
델타 공유에 대한 데이터 수신자 만들기 및 관리를 참조하세요.
개방형 공유와 Databricks 간 공유의 차이점
이 섹션에서는 Unity 카탈로그가 활성화된 Databricks 작업 영역에서 공유할 수 있는 두 가지 프로토콜에 대해 설명합니다.
참고 항목
이 섹션에서는 공급자가 Unity 카탈로그가 활성화된 Azure Databricks 작업 영역에 있다고 가정합니다. Databricks 플랫폼이 아닌 플랫폼이나 Unity 카탈로그가 활성화되지 않은 작업 영역에서 오픈 소스 델타 공유 서버를 설정하여 공유하는 방법을 알아보려면 github.com/delta-io/delta-sharing을 참조하세요.
공급자가 Azure Databricks에서 델타 공유를 사용하는 방법은 데이터를 공유하는 사용자에 따라 달라집니다.
- 개방형 공유를 사용하면 Azure Databricks에 대한 액세스 권한이 있는지 여부에 관계없이 모든 사용자와 데이터를 공유할 수 있습니다.
- Databricks 간 공유를 통해 작업 공간이 자신과 다른 유니티 카탈로그 메타스토어에 연결된 Azure 데이터브릭스 사용자와 데이터를 공유할 수 있습니다. Databricks-Databricks는 공개 공유에서 사용할 수 없는 Notebook, 볼륨 및 모델 공유도 지원합니다.
개방형 Delta Sharing이란?
Databricks 사용 여부에 관계없이 Azure Databricks 작업 영역 외부의 사용자와 데이터를 공유하려는 경우 개방형 Delta Sharing을 사용하여 데이터를 안전하게 공유할 수 있습니다. 데이터 공급자는 토큰을 생성하고 수신자와 안전하게 공유합니다. 수신자는 데이터 공급자가 액세스 권한을 부여한 공유에 포함되어 있는 테이블에 인증하고 읽기 권한을 얻습니다.
수신자는 다음을 비롯한 여러 컴퓨팅 도구와 플랫폼을 사용하여 공유 데이터에 액세스할 수 있습니다.
- Azure Databricks
- Apache Spark
- Pandas
- Power BI
Delta Sharing 커넥터의 전체 목록과 커넥터 사용 방법에 대한 자세한 내용은 Delta Sharing 설명서를 참조하세요.
Delta Sharing 개방형 공유 프로토콜을 사용하여 데이터 공유(공급자의 경우)도 참조하세요.
Databricks 간 Delta Sharing이란?
Databricks-to-Databricks Delta Sharing은 Unity 카탈로그가 활성화된 Databricks 작업 공간을 보유한 사용자와 데이터를 공유할 때 사용하는 방식입니다. Databricks-Databricks 공유를 사용하면 AWS, Azure 또는 GCP에 있든 상관없이 다른 Databricks 계정의 사용자와 데이터를 공유할 수 있습니다. 또한 사용자 고유의 Databricks 계정에서 다양한 Unity 카탈로그 메타스토어 간에 데이터를 안전하게 공유하는 좋은 방법입니다. 참고로, 동일한 Unity 카탈로그 메타스토어에 연결된 작업 영역 간에는 Unity 카탈로그 자체를 사용하여 작업 공간 간의 데이터 접근을 관리할 수 있으므로 Delta Sharing을 사용할 필요가 없습니다.
Databricks 간 공유의 장점 중 하나는 공유 수신자가 토큰이 없어도 공유에 액세스할 수 있으며, 공급자는 수신자 토큰을 관리할 필요가 없다는 것입니다. 모든 ID 확인, 인증 및 감사를 포함한 공유 연결의 보안은 Delta Sharing 및 Databricks 플랫폼을 통해 전적으로 관리됩니다. 또 다른 장점은 Databricks Notebook 파일, 보기, Unity 카탈로그 볼륨 및 Unity 카탈로그 모델을 공유할 수 있다는 것입니다.
Delta Sharing Databricks 간 프로토콜을 사용하여 데이터 공유(공급자의 경우)도 참조하세요.
공급자 관리자는 Delta Sharing을 어떻게 설정하나요?
이 섹션에서는 공급자가 Delta Sharing을 사용하도록 설정하고 Unity 카탈로그가 활성화된 Azure Databricks 작업 영역에서 공유를 시작하는 방법에 대해 간략하게 설명합니다. 오픈 소스 델타 공유는 github.com/delta-io/delta-sharing을 참조하세요.
동일한 계정의 Unity 카탈로그 메타스토어 간에는 항상 Databricks 간 공유를 사용하도록 설정됩니다. 하지만 다른 계정의 Databricks 작업 영역이나 Databricks를 사용하지 않는 클라이언트와 Delta Sharing을 사용하여 데이터를 공유하려는 경우, Azure Databricks 계정 관리자 혹은 메타스토어 관리자는 다음과 같은 고수준의 설정 단계를 수행해야 합니다.
공유하려는 데이터를 관리하는 Unity 카탈로그 메타스토어에 Delta Sharing을 사용하도록 설정합니다.
참고 항목
Delta Sharing만 사용하여 계정의 다른 Unity Catalog 메타스토어에 있는 사용자와 데이터를 공유하려는 경우 메타스토어에서 Delta Sharing을 사용하도록 설정할 필요가 없습니다. 단일 Azure Databricks 계정 내에서 메타스토어 간 공유는 기본적으로 사용하도록 설정됩니다.
메타스토어에서 Delta Sharing 사용을 참조하세요.
Unity 카탈로그 메타스토어에 등록된 데이터 자산을 포함하는 공유를 만듭니다.
Databricks를 사용하지 않는 수신자와 데이터를 공유하는 경우(오픈 공유), Delta 또는 Parquet 형식의 테이블을 포함할 수 있습니다. Databricks-Databricks 공유를 사용하려는 경우 보기, Unity 카탈로그 볼륨, Unity 카탈로그 모델 및 Notebook 파일을 공유에 추가할 수도 있습니다.
Delta 공유에 대한 공유 만들기 및 관리를 참조하세요.
수신자를 만듭니다.
델타 공유에 대한 데이터 수신자 만들기 및 관리를 참조하세요.
수신자가 Databricks 사용자가 아니거나 Unity 카탈로그에 사용하도록 설정된 Databricks 작업 영역에 액세스할 수 없는 경우 개방형 공유를 사용해야 합니다. 해당 수신자에 대한 토큰 기반 자격 증명 세트가 생성됩니다.
수신자가 Unity 카탈로그에 사용하도록 설정된 Databricks 작업 영역에 액세스할 수 있는 경우 Databricks 간 공유를 사용할 수 있으며, 토큰 기반 자격 증명은 필요하지 않습니다. 수신자에게 공유 식별자를 요청하여 보안 연결을 설정하는 데 사용합니다.
팁
자신을 테스트 수신자로 사용하여 설정 프로세스를 진행해 보세요.
하나 이상의 공유에 대한 액세스 권한을 수신자에게 부여합니다.
Delta Sharing 데이터 공유에 대한 액세스 관리(공급자용)을 참조하세요.
참고 항목
이 단계는 관리자가 아닌 사용자가
USE SHARE
,USE RECIPIENT
및SET SHARE PERMISSION
권한을 사용하여 수행할 수도 있습니다. Unity 카탈로그 권한 및 보안 개체를 참조하세요.공유에 연결하는 데 필요한 정보를 수신자에게 보냅니다(개방형 공유만 해당).
수신자에게 연결 정보 보내기를 참조하세요.
개방형 공유의 경우 보안 채널을 사용하여 수신자에게 토큰 기반 자격 증명을 다운로드할 수 있는 활성화 링크를 보냅니다.
Databricks 간 공유의 경우 수신자에게 공유에 대한 액세스 권한을 부여하는 즉시 수신자의 Databricks 작업 영역에서 공유에 포함된 데이터를 사용할 수 있게 됩니다.
이제 수신자는 공유 데이터에 액세스할 수 있습니다.
수신자가 공유 데이터에 액세스하려면 어떻게 해야 하나요?
수신자는 읽기 전용 형식으로 공유 데이터 자산에 액세스합니다. Notebook 파일은 읽기 전용이지만, 다른 Notebook과 마찬가지로 복제 및 수정하고 수신자의 작업 영역에서 실행하는 것이 가능합니다.
보안 액세스는 공유 모델에 따라 달라집니다.
- 오픈 공유 (수신자에게 Unity 카탈로그가 활성화된 Databricks 작업 공간이 없는 경우): 수신자는 Apache Spark, pandas, Power BI, Databricks 등 다양한 도구에서 데이터를 액세스할 때마다 인증 정보를 제공합니다. Delta Sharing 오픈 공유를 사용하여 공유된 데이터 읽기(수신자의 경우)를 참조하세요.
- Databricks 간(수신자 작업 공간은 Unity 카탈로그에 대해 활성화됨): 수신자가 Databricks를 사용하여 데이터에 액세스합니다. Unity 카탈로그를 사용하여 Databricks 계정의 다른 사용자에게 액세스 권한을 부여하고 거부할 수 있습니다. Databricks 간 Delta Sharing을 사용하여 공유된 데이터 읽기(수신자의 경우)를 참조하세요.
데이터 공급자가 자신의 Databricks 계정에서 데이터 테이블 또는 볼륨을 업데이트할 때마다 수신자의 시스템에 업데이트가 거의 실시간으로 표시됩니다.
공유 데이터를 공유하고 액세스하는 사용자를 어떻게 추적하나요?
Unity 카탈로그가 활성화된 Azure Databricks 작업 영역의 데이터 공급자는 Azure Databricks 감사 로깅 및 시스템 테이블을 사용하여 공유 및 수신자의 생성 및 수정을 모니터링하고, 공유에 대한 수신자 활동을 모니터링할 수 있습니다. 데이터 공유 감사 및 모니터링을 참조하세요.
Databricks 작업 영역에서 공유 데이터를 사용하는 데이터 수신자는 Databricks 감사 로깅 및 시스템 테이블을 사용하여 누가 어떤 데이터에 액세스하는지 파악할 수 있습니다. 데이터 공유 감사 및 모니터링을 참조하세요.
볼륨 공유
Databricks-to-Databricks 공유 흐름을 사용하여 볼륨을 공유할 수 있습니다. 공유에 볼륨 추가(공급자용) 및 Databricks-to-Databricks Delta Sharing을 사용하여 공유된 데이터 읽기(수신자용)(수신자용)를 참조하세요.
모델 공유
Databricks-to-Databricks 공유 흐름을 사용하여 모델을 공유할 수 있습니다. 공유에 모델 추가(공급자용) 및 Databricks 간 Delta Sharing을 사용하여 공유된 데이터 읽기(수신자용)(수신자용)를 참조하세요.
Norebooks 공유
델타 공유를 사용하여 Databricks-to-Databricks 공유 흐름을 통해 Notebooks 파일을 공유할 수 있습니다. 공유에 Notebook 파일 추가(공급자용) 및 공유 Notebooks 읽기(수신자용)를 참조하세요.
행 및 열 수준에서 액세스 제한
받는 사람 속성에 따라 특정 테이블 데이터에 대한 액세스를 제한하는 동적 보기를 공유할 수 있습니다. 동적 보기 공유를 사용하려면 Databricks-to-Databricks 공유 흐름이 필요합니다. 행과 열을 필터링하기 위해 공유에 동적 보기 추가를 참조하세요.
델타 공유 및 스트리밍
델타 공유는 Spark 구조적 스트리밍을 지원합니다. 공급자는 테이블을 기록과 공유하여 받는 사람이 이를 구조적 스트림 원본으로 사용하여 짧은 대기 시간으로 증분 방식으로 공유 데이터를 처리할 수 있도록 할 수 있습니다. 수신자는 기록과 공유된 테이블에서 Delta Lake 시간 이동 쿼리를 수행할 수도 있습니다.
기록과 테이블을 공유하는 방법을 알아보려면 공유에 테이블 추가를 참조하세요. 공유 테이블을 스트리밍 원본 으로 사용하는 방법을 알아보려면 Apache Spark 구조적 스트림을 사용하여 테이블 쿼리(Databricks-to-Databricks 공유의 수신자의 경우) 또는 Spark 구조적 스트림을 사용하여 공유 테이블에 액세스(오픈 공유 데이터 수신자의 경우)를 참조하세요.
Azure Databricks에서 스트리밍도 참조하세요.
Delta Lake 기능 지원 매트릭스
델타 공유는 테이블을 공유할 때 대부분의 Delta Lake 기능을 지원합니다. 이 지원 매트릭스는 다음을 나열합니다.
- 특정 버전의 Databricks Runtime, 오픈 소스 Delta Sharing Spark 커넥터 또는 오픈 소스 Delta Sharing Python 커넥터가 필요한 델타 기능입니다.
- 부분적으로 지원되는 기능.
기능 | 공급자 | Databricks 수신자 | 오픈 소스 수신자 |
---|---|---|---|
삭제 벡터 | 이 기능과 테이블 공유는 공개 미리 보기로 제공됩니다. | - 일괄 처리 쿼리의 경우 Databricks Runtime 14.1 이상 - CDF 및 스트리밍 쿼리에 대한 Databricks Runtime 14.2 이상 |
- Delta Sharing Spark 커넥터 3.1 이상 - Delta Sharing Python 커넥터 1.1.0 이상 - Power BI v2.132.908.0 이상 |
열 매핑 | 이 기능과 테이블 공유는 공개 미리 보기로 제공됩니다. | - 일괄 처리 쿼리의 경우 Databricks Runtime 14.1 이상 - CDF 및 스트리밍 쿼리에 대한 Databricks Runtime 14.2 이상 |
- Delta Sharing Spark 커넥터 3.1 이상 - Delta Sharing Python 커넥터 1.1.0 이상 - Power BI v2.132.908.0 이상 |
균일한 형식 | 이 기능과 테이블 공유는 공개 미리 보기로 제공됩니다. | - 일괄 처리 쿼리의 경우 Databricks Runtime 14.1 이상 - CDF 및 스트리밍 쿼리에 대한 Databricks Runtime 14.2 이상 |
- Delta Sharing Spark 커넥터 3.1 이상 - Delta Sharing Python 커넥터 1.1.0 이상 - Power BI v2.132.908.0 이상 |
V2 검사점 | 제한 사항으로 지원됨 | 제한 사항으로 지원됨 | 제한 사항으로 지원됨 |
TimestampNTZ | 지원 여부 | Databricks Runtime 14.1 이상 | Delta Sharing Spark 커넥터 3.3 이상 |
Liquid 클러스터링 | 제한 사항으로 지원됨 | 제한 사항으로 지원됨 | 제한 사항으로 지원됨 |
Delta Sharing FAQ
다음은 Delta Sharing에 대한 자주 묻는 질문입니다.
Delta Sharing를 사용하려면 Unity 카탈로그가 필요한가요?
아니요, 공급자로서 공유 데이터를 공유하거나 수신자로서 공유 데이터를 사용하기 위해 Unity 카탈로그가 필요하지 않습니다. 그러나 Unity 카탈로그는 비테이블 형식 지원 및 AI 자산 공유 지원, 기본 제공 거버넌스, 단순성 및 쿼리 성능과 같은 이점을 제공합니다.
공급자는 다음 두 가지 방법으로 데이터를 공유할 수 있습니다.
Unity 카탈로그 관리에서 공유할 자산을 배치하고 기본 제공 Azure Databricks Delta Sharing 서버를 사용하여 자산을 공유합니다.
모든 자산을 Unity 카탈로그로 마이그레이션할 필요는 없습니다. 공유하려는 자산을 관리하려면 Unity 카탈로그에 사용할 수 있는 Azure Databricks 작업 영역이 하나만 있으면 됩니다. 일부 계정에서는 자동으로 Unity 카탈로그에 대해 새 작업 영역을 사용하도록 설정합니다. Unity 카탈로그 자동 사용을 참조하세요.
Azure Databricks 계정을 사용하지 않고도 데이터를 공유할 수 있도록 오픈 Delta Sharing 서버를 구현하세요.
수신자는 다음 두 가지 방법으로 데이터를 사용할 수 있습니다.
Databricks 작업 영역이 없는 경우 Power BI, pandas 및 오픈 소스 Apache Spark를 비롯한 많은 데이터 플랫폼에서 사용할 수 있는 오픈 소스 Delta Sharing 커넥터를 사용합니다. Delta Sharing 개방형 공유(수신자용)를 사용하여 공유된 데이터 읽기 및 Delta Sharing 오픈 소스 프로젝트를 사용하여 공유된 데이터 읽기를 참조하세요.
Azure Databricks 작업 영역에서. 수신자 작업 영역을 Unity 카탈로그에 사용하도록 설정할 필요는 없지만, 사용하도록 설정한다면 거버넌스, 단순성 및 성능의 장점이 있습니다.
이러한 이점을 원하는 수신자 조직이 모든 자산을 Unity 카탈로그로 마이그레이션할 필요는 없습니다. 공유된 자산을 관리하기 위해서는 Unity 카탈로그가 사용 설정된 단 하나의 Azure Databricks 작업 영역만 있으면 됩니다. 일부 계정에서는 자동으로 Unity 카탈로그에 대해 새 작업 영역을 사용하도록 설정합니다. Unity 카탈로그 자동 사용을 참조하세요.
Delta Sharing 개방형 공유(수신자용)를 사용하여 공유된 데이터 읽기 및 Databricks-to-Databricks Delta Sharing(수신자용)를 사용하여 공유된 데이터 읽기를 참조하세요.
Delta Sharing를 사용하려면 Databricks 고객이 되어야 하나요?
아니요, Delta Sharing는 개방형 프로토콜입니다. 모든 데이터 플랫폼의 수신자와 비 Databricks 데이터를 공유할 수 있습니다. 공급자는 모든 컴퓨팅 플랫폼에서 공유하도록 개방형 Delta Sharing 서버를 구성할 수 있습니다. 수신자는 Power BI, pandas 및 오픈 소스 Spark를 비롯한 많은 데이터 제품에 오픈 소스 Delta Sharing 커넥터를 사용하여 공유 데이터를 사용할 수 있습니다.
그러나 Azure Databricks에서 Delta Sharing를 사용하는 경우, 특히 Unity 카탈로그 사용 작업 영역에서 공유하면 많은 이점이 있습니다.
자세한 내용은 이 FAQ의 첫 번째 질문을 참조하세요.
Delta Sharing에는 송신 비용이 발생하나요?
지역 내의 Delta Sharing에는 송신 비용이 발생하지 않습니다. 다른 데이터 공유 플랫폼과 달리 Delta Sharing에는 데이터 복제가 필요하지 않습니다. 이 모델에는 많은 장점이 있지만 이는 클라우드 또는 지역에서 데이터를 공유할 때 클라우드 공급업체가 데이터 송신 요금을 부과할 수도 있음을 의미합니다. Azure Databricks는 송신 요금이 발생하지 않는 Cloudflare R2에서의 공유를 지원하며, 송신 요금을 모니터링하고 방지하기 위한 다른 도구 및 권장 사항도 제공합니다. Delta Sharing 송신 비용 모니터링 및 관리(공급자용)를 참조하세요.
공급자가 수신자 액세스를 철회할 수 있나요?
예, 수신자 액세스는 주문형 및 지정된 세분성 수준에서 철회할 수 있습니다. 특정 공유 및 특정 IP 주소로의 수신자 액세스를 거부하고, 수신자에 대한 표 형식 데이터를 필터링하며, 수신자 토큰을 철회하고, 수신자를 완전히 삭제할 수 있습니다. 공유에 대한 수신자 액세스 철회 및 Delta Sharing에 대한 관리되는 데이터 수신자 만들기를 참조하세요.
미리 서명된 URL을 사용하는 것은 안전하지 않나요?
Delta Sharing는 미리 서명된 URL을 사용하여 개체 스토리지의 파일에 대한 임시 액세스를 제공합니다. 공유 데이터에 대한 액세스 권한이 이미 있는 수신자에게만 제공됩니다. 수명이 짧고 수신자가 이미 부여한 수준 이상으로 액세스 수준을 확장하지 않기 때문에 안전합니다.
Delta Sharing 개방형 공유 프로토콜에서 사용되는 토큰은 안전한가요?
Delta Sharing를 사용하면 사용 가능한 다른 데이터 공유 플랫폼과 달리 플랫폼 간 공유를 사용할 수 있으므로 공유 프로토콜에는 개방형 토큰이 필요합니다. 공급자는 토큰 수명을 구성하고, 네트워킹 컨트롤을 설정하며, 요청 시 액세스를 철회하여 토큰 보안을 보장할 수 있습니다. 또한 토큰은 수신자가 이미 부여 받은 액세스 수준 이상으로 확장하지 않습니다. 토큰에 대한 보안 고려 사항을 참조하세요.
토큰을 사용하지 않고 수신자 공유에 대한 액세스를 관리하려면 Databricks-to-Databricks 공유를 사용하거나 Databricks 계정 팀에 연락하여 대안을 찾아야 합니다.
Delta Sharing은 보기 공유를 지원하나요?
네, Delta Sharing은 보기 공유를 지원합니다. 공유에 보기 추가를 참조하세요.
공유 보기에 대한 계획된 향상된 기능을 알아보려면 Databricks 계정 팀에 문의하세요.
제한 사항
- 표 형식 데이터는 Delta 테이블 형식이어야 합니다. 쉽게 Parquet 테이블을 Delta로 변환하고 다시 반대로 변환할 수 있습니다. CONVERT TO DELTA를 참조하세요.
- Delta Sharing은 다음과 같은 제한 사항과 함께 액체 클러스터링 및 V2 검사점을 사용하는 테이블을 지원합니다.
- 수신자는 스냅샷 쿼리만 실행할 수 있습니다. CDF(변경 데이터 피드) 또는 스트리밍 쿼리를 실행할 수 없습니다.
- 공급자는 파티션 필터링과 테이블을 공유할 수 없습니다.
- 테이블 제약 조건(기본 및 외래 키 제약 조건)은 공유 테이블에서 사용할 수 없습니다.
- 보기 공유는 Databricks-to-Databricks 공유에서만 지원됩니다. 공유 가능한 뷰는 델타 테이블 또는 다른 공유 가능한 뷰에서 정의해야 합니다. 공유에 보기 추가(공급자용) 및 공유 보기 읽기(수신자용)를 참조하세요.
- Notebook 공유는 Databricks-to-Databricks 공유에서만 지원됩니다. 공유에 Notebook 파일 추가 및 Databricks 간 Delta Sharing을 사용하여 공유된 데이터 읽기(수신자용)를 참조하세요.
- 볼륨 공유는 Databricks-to-Databricks 공유에서만 지원됩니다. 공유에 볼륨 추가(공급자용) 및 Databricks-to-Databricks Delta Sharing을 사용하여 공유된 데이터 읽기(수신자용)를 참조하세요.
- 모델 공유는 Databricks-to-Databricks 공유에서만 지원됩니다. 공유에 모델 추가(공급자용) 및 Databricks 간 Delta Sharing을 사용하여 공유된 데이터 읽기(수신자용)를 참조하세요.
- 공유 테이블에 허용되는 메타데이터의 파일 수가 제한되어 있습니다. 자세한 내용은 리소스 한도 초과 오류를 참조하세요.
- 명명된 스키마는
information_schema
Unity Catalog에 예약되어 있으므로 Unity 카탈로그 메타스토어로 가져올 수 없습니다. - Delta Sharing은 테이블
SHALLOW CLONE
공유를 지원하지 않습니다. Azure Databricks는 절대 경로를 참조하는 델타 로그에 대한 사전 서명 URL을 지원하지 않습니다.
Delta Lake 기능 지원 매트릭스도 참조하세요.
리소스 할당량
Azure Databricks는 모든 델타 공유 보안 개체에 리소스 할당량을 적용합니다. 이러한 할당량은 리소스 제한에 나열됩니다. 이러한 리소스 제한을 초과할 것으로 예상되는 경우, Azure Databricks 계정 팀에게 문의하세요.
Unity 카탈로그 리소스 할당량 API를 사용하여 할당량 사용량을 모니터링할 수 있습니다. Unity 카탈로그 리소스 할당량 사용량 모니터링을 참조 하세요.
다음 단계
- Delta Sharing에 Databricks 계정 사용
- 공유 만들기
- 수신자 만들기
- 개방형 공유 및 Databricks 간 공유 모델에 대해 자세히 알아보기
- 수신자가 공유 데이터에 액세스하는 방법 알아보기