주요 컨텐츠로 이동

Delta Sharing 소개: 안전한 데이터 공유를 위한 개방적 프로토콜

Delta-Sharing-Social

발행일: May 26, 2021

공지사항Less than a minute

업데이트: Delta Sharing 이 이제 AWS와 Azure에서 정식 출시되었습니다.

Delta Lake 사용을 start하는 데 필요한 단계별 가이드를 제공하는 O'Reilly의 새 ebook 을 미리 만나보세요.

 

기업들이 고객, 공급업체, 파트너와 안전하게 데이터를 교환하고자 함에 따라 현대 경제에서 Data Sharing은 매우 중요해졌습니다. 예를 들어, 소매업체는 실시간으로 공급업체에 판매 데이터를 게시하거나 공급업체는 실시간 재고를 공유할 수 있습니다. 하지만 지금까지 데이터 공유는 공유 솔루션이 단일 공급업체에 묶여 있어 심각하게 제한되었습니다. 이는 서로 다른 플랫폼을 사용하는 데이터 제공자와 소비자 모두에게 마찰을 일으킵니다.

오늘, 저희는 조직 간 공유를 간소화하는 새로운 오픈 소스 프로젝트인 Delta Sharing을 출시합니다. 이는 대규모 데이터세트의 안전한 실시간 교환을 위한 오픈 프로토콜로서, 최초로 제품 간 안전한 Data Sharing을 가능하게 합니다. 저희는 세계 최고의 소프트웨어 및 데이터 제공업체 파트너와 함께 Delta Sharing을 개발하고 있습니다.

오늘날의 Data Sharing 솔루션이 마찰을 일으키는 이유를 확인하기 위해, 공급업체 중 한 곳의 애널리스트와 데이터를 공유하고자 하는 소매업체를 생각해 보세요. 오늘날 소매업체는 Data Sharing을 제공하는 여러 클라우드 데이터 웨어하우스 중 하나를 사용할 수 있지만, 애널리스트는 IT, 보안 및 조달팀과 협력하여 동일한 warehouse 제품을 회사에 배포해야 하며 이 프로세스는 몇 달이 걸릴 수 있습니다. 또한 웨어하우스가 배포되면 애널리스트가 가장 먼저 하는 일은 pandas나 Tableau와 같이 선호하는 데이터 과학 도구로 데이터를 내보내는 것입니다.

Delta Sharing을 사용하면 데이터 사용자는 먼저 특정 플랫폼을 배포할 필요 없이 pandas, Tableau 또는 공개 프로토콜을 구현하는 수십 개의 다른 시스템을 통해 공유 데이터에 직접 연결할 수 있습니다. 이는 액세스 시간을 수개월에서 수분으로 단축하고, 가능한 한 많은 사용자에게 도달하려는 데이터 제공자의 작업을 대폭 줄여줍니다.

저희는 Delta Sharing을 위해 선도적인 클라우드, BI, 데이터 공급업체의 제품 팀을 포함한 활발한 파트너 생태계와 협력하고 있습니다.

 Delta Sharing 생태계

이 게시물에서는 Delta Sharing의 작동 방식과 Data Sharing에 대한 개방형 접근 방식에 대해 기대하는 이유를 설명합니다.

Delta Sharing 목표

Delta Sharing은 공급자와 소비자 모두 기존 데이터 및 워크플로에서 쉽게 사용할 수 있도록 설계되었습니다. 저희는 네 가지 목표를 염두에 두고 설계했습니다.

  • 데이터를 복사하지 않고 실시간 데이터 직접 공유: 저희는 기존 데이터를 실시간으로 쉽게 공유할 수 있도록 하고 싶습니다. 오늘날 대부분의 엔터프라이즈 데이터는 클라우드 데이터 레이크 및 lakehouse 시스템에 저장됩니다. Delta Sharing은 이러한 기반 위에서 작동하며, 특히 Delta Lake 또는 Apache Parquet 형식의 기존 데이터세트를 안전하게 공유할 수 있게 해줍니다.
  • 다양한 클라이언트 지원: 수신자는 새로운 플랫폼을 설치하지 않고도 자신이 선택한 도구에서 직접 데이터를 사용할 수 있어야 합니다. Delta Sharing 프로토콜은 도구가 직접 지원하기 쉽도록 설계되었습니다. 이 프로토콜은 대부분의 도구에서 이미 지원하는 Parquet을 기반으로 하므로 커넥터 구현이 쉽습니다.
  • 강력한 보안, 감사 및 거버넌스: 이 프로토콜은 개인 정보 보호 및 규정 준수 요건을 충족하도록 설계되었습니다. Delta Sharing을 사용하면 단일 적용 지점에서 공유 데이터에 대한 액세스 권한을 부여, 추적 및 감사할 수 있습니다.
  • 대규모 데이터세트로 확장: Data Sharing은 세분화된 산업 또는 금융 데이터와 같은 테라바이트 규모의 데이터세트를 점점 더 많이 지원해야 하며, 이는 레거시 솔루션에는 어려운 과제입니다. Delta Sharing은 클라우드 스토리지 시스템의 비용과 탄력성을 활용하여 대규모 데이터세트를 경제적이고 안정적으로 공유합니다.

Delta Sharing은 어떻게 작동하나요?

Delta Sharing은 클라우드 데이터세트의 일부에 대한 액세스를 안전하게 공유하는 간단한 REST 프로토콜입니다. S3, ADLS 또는 GCS와 같은 최신 클라우드 스토리지 시스템을 활용하여 대용량 데이터세트를 안정적으로 전송합니다. 데이터 공급자와 수신자의 두 당사자가 있습니다.

데이터 제공자로서 Delta Sharing을 사용하면 클라우드 데이터 레이크에 저장된 기존 테이블 또는 그 일부(예: 특정 테이블 버전의 파티션)를 Delta Lake 형식으로 공유할 수 있습니다. Delta Lake 테이블은 기본적으로 Parquet 파일 모음이며, 필요한 경우 기존 Parquet 테이블을 Delta Lake로 쉽게 래핑 할 수 있습니다. 데이터 공급자는 공유하려는 데이터를 결정하고, 그 앞에 Delta Sharing 프로토콜을 구현하고 수신자에 대한 액세스를 관리하는 공유 서버를 실행합니다. 저희는 참조 공유 서버를 오픈 소스로 공개했으며, 다른 공급업체들도 그렇게 할 것으로 예상하듯이 Databricks에서 호스팅되는 서버를 제공합니다.

데이터 수신자로서 프로토콜을 지원하는 많은 Delta Sharing 클라이언트 중 하나만 있으면 됩니다. pandas, Apache Spark, Rust 및 Python용 오픈 소스 커넥터를 출시했으며 더 많은 커넥터를 위해 파트너와 협력하고 있습니다.

실제 교환은 클라우드 스토리지 시스템과 Delta Lake의 기능을 활용하여 효율적으로 이루어지도록 신중하게 설계되었습니다. 프로토콜 은 다음과 같이 작동합니다.

  1. 수신자의 클라이언트는 전달자 토큰 또는 다른 방법을 통해 공유 서버에 인증하고 특정 테이블의 쿼리를 요청합니다. 클라이언트는 데이터에 필터를 제공할 수도 있습니다(예: “country=US”)를 데이터의 하위 집합만 읽기 위한 힌트로 제공합니다.
  2. 서버는 클라이언트가 데이터에 액세스할 수 있는지 확인하고 요청을 logs 다음, 다시 보낼 데이터를 결정합니다. 이는 실제로 테이블을 구성하는 S3 또는 기타 클라우드 스토리지 시스템에 있는 데이터 객체의 하위 집합이 됩니다.
  3. 데이터를 전송하기 위해 서버는 클라이언트가 공유 서버를 통해 스트리밍하지 않고 클라우드 공급자로부터 이러한 Parquet 파일을 직접 읽을 수 있도록 하는 수명이 짧은 사전 서명된 URL을 생성하므로 대규모 대역폭에서 병렬로 전송할 수 있습니다. 모든 주요 클라우드에서 사용할 수 있는 이 강력한 기능은 매우 큰 데이터세트를 빠르고 저렴하며 안정적으로 공유할 수 있게 해줍니다.

설계의 이점

Delta Sharing 설계는 공급자와 소비자 모두에게 많은 이점을 제공합니다.

  • 클라이언트는 객체의 특정 하위 집합에만 액세스할 수 있으므로 데이터 제공자는 전체 테이블 또는 테이블의 한 버전이나 파티션만 쉽게 공유할 수 있습니다.
  • 데이터 제공자는 Delta Lake의 ACID 트랜잭션 을 사용하여 실시간으로 데이터를 안정적으로 업데이트할 수 있으며, 수신자는 항상 일관된 뷰를 볼 수 있습니다.
  • 데이터 수신자는 제공업체와 동일한 플랫폼에 있거나 클라우드 내에 있을 필요가 전혀 없습니다. 공유는 클라우드 간에는 물론, 클라우드에서 온프레미스 사용자에 이르기까지 작동합니다.
  • Delta Sharing 프로토콜은 클라이언트가 이미 Parquet을 이해하고 있다면 구현하기가 매우 쉽습니다. 오픈 소스 엔진과 BI 도구를 사용한 대부분의 프로토타입 구현은 구축하는 데 1~2주밖에 걸리지 않았습니다.
  • 기본 클라우드 시스템을 사용하여 빠르고 저렴하며 안정적이고 병렬화 가능한 전송이 가능합니다.

개방형 에코시스템

앞서 언급했듯이 저희는 Data Sharing에 대한 개방형 접근 방식을 구축하게 되어 기대가 큽니다. Nasdaq과 같은 데이터 제공업체는 모두 각기 다른 분석 도구를 사용하는 다양한 소비자에게 데이터를 제공하기가 너무 어렵다고 한결같이 말했습니다.

"저희는 Delta Sharing과, 조직 간의 안전한 데이터 공유 및 협업을 간소화하는 오픈 프로토콜이라는 그 비전을 지지합니다." "Delta Sharing은 파트너와의 협업 방식을 개선하고 운영 비용을 절감하며, 더 많은 사용자가 Nasdaq의 포괄적인 데이터 제품군에 액세스하여 인사이트를 발견하고 금융 전략을 개발할 수 있도록 지원할 것입니다.”라고 Nasdaq의 대체 데이터 책임자인 Bill Dague는 말했습니다.

Delta Sharing을 사용하면 수십 개의 인기 시스템이 공유 데이터에 직접 연결할 수 있게 되어 모든 사용자가 데이터를 사용할 수 있으므로 모든 참여자의 마찰이 줄어듭니다. 저희는 Delta Sharing 표준을 정의하기 위해 수십 개의 파트너와 협력하고 있으며 여러분의 참여를 기다립니다.
이들 기업 중 다수가 오늘의 출시에 대한 지원을 확대했습니다.

BI 도구: Tableau, Qlik, Power BI, Looker
분석: AtScale, Dremio, Starburst, Microsoft Azure, Google BigQuery
거버넌스: Collibra, Immuta, Alation, Privacera
데이터 공급자: FactSet, Nasdaq, Precisely, Safegraph, Atlassian, AWS, Foursquare, ICE, Qandl, S&P, SequenceBio

Databricks 기반 Delta Sharing

Databricks 고객은 당사의 Unity Catalog에 기본적으로 통합된 Delta Sharing을 통해 조직 내부 및 조직 간 데이터 공유를 위한 간소화된 환경을 이용할 수 있습니다. 관리자는 새로운 CREATE SHARE SQL 구문 또는 REST API를 사용하여 공유를 관리하고 모든 액세스를 중앙에서 감사할 수 있습니다. 수신자는 어떤 플랫폼에서든 데이터를 소비할 수 있습니다. 미리 보기 액세스 및 업데이트를 위한 대기자 명단에 등록 하세요.

로드맵

이 첫 번째 버전의 Delta Sharing은 start에 불과합니다. 프로젝트를 개발하면서 스트림, SQL 뷰 또는 머신 러닝 모델과 같은 임의의 파일 등 다른 객체를 공유하도록 확장할 계획입니다. Data Sharing의 미래는 개방형이며, 이 접근 방식을 다른 공유 워크플로에 적용하게 되어 매우 기쁘게 생각합니다.

Delta Sharing 시작하기

오픈 소스 Delta Sharing 릴리스를 사용해 보려면 delta.io/sharing의 지침을 따르세요. 또는 Databricks 고객인 경우 가입 하여 서비스 업데이트를 받아보세요. 여러분의 피드백이 매우 기대됩니다!

게시물을 놓치지 마세요

관심 있는 카테고리를 구독하고 최신 게시물을 받은편지함으로 받아보세요

다음은 무엇인가요?

Optimizing joins with primary key constraints

데이터 웨어하우징

August 12, 2024/2분 소요

기본 키와 외래 키 제약 조건이 정식 출시(GA)되어 더 빠른 쿼리를 가능하게 합니다

Five Simple Steps for Implementing a Star Schema in Databricks With Delta Lake

제품

September 12, 2024/1분 이내 소요

Delta Lake로 Databricks에서 스타 스키마를 구현하기 위한 간단한 5단계