다음을 통해 공유


델타 레이크란?

Delta Lake는 Databricks의 레이크 하우스에서 tables을 위한 기반을 제공하는 최적화된 스토리지 계층입니다. Delta Lake는 ACID 트랜잭션 및 스케일링 가능한 메타데이터 처리를 위해 파일 기반 트랜잭션 로그를 사용하여 Parquet 데이터 파일을 확장하는 오픈 소스 소프트웨어입니다. Delta Lake는 Apache Spark API와 완벽하게 호환되며 구조적 스트리밍과 긴밀하게 통합되도록 개발되어 일괄 처리 및 스트리밍 작업 모두에 단일 데이터 복사본을 쉽게 사용하고 대규모로 증분 처리를 제공할 수 있습니다.

Delta Lake는 Azure Databricks의 모든 작업에 대한 기본 형식입니다. 별도로 지정하지 않는 한, Azure Databricks의 모든 tables는 델타 tables입니다. Databricks는 원래 Delta Lake 프로토콜을 개발했으며 오픈 소스 프로젝트에 지속적으로 기여하고 있습니다. Databricks 플랫폼의 많은 최적화 및 제품은 Apache Spark 및 Delta Lake에서 제공하는 보증을 기반으로 합니다. Azure Databricks의 최적화에 대한 자세한 내용은 Azure Databricks의 최적화 권장 사항을 참조하세요.

Delta Lake SQL 명령에 대한 참조 정보는 Delta Lake 문을 참조하세요.

Delta Lake 트랜잭션 로그에는 모든 시스템에서 로그를 읽는 데 사용할 수 있는 잘 정의된 오픈 프로토콜이 있습니다. 델타 트랜잭션 로그 프로토콜을 참조하세요.

Delta Lake 시작

Azure Databricks의 모든 tables는 기본적으로 Delta tables로 설정됩니다. Apache Spark DataFrames 사용하든 SQL을 사용하든 간에 기본 설정으로 데이터를 lakehouse에 저장하기만 하면 Delta Lake의 모든 이점을 get 있습니다.

tables만들기, 데이터 읽기, 쓰기 및 업데이트와 같은 기본 Delta Lake 작업의 예는 자습서: Delta Lake참조하세요.

Databricks에는 Delta Lake에 대한 모범 사례를 위한 많은 권장 사항이 있습니다.

Delta Lake로 데이터 변환 및 수집

Azure Databricks는 레이크하우스에 데이터 로드를 가속화하고 간소화하는 다양한 제품을 제공합니다.

데이터 수집 옵션의 전체 list을 보려면, Databricks 레이크하우스에 데이터 수집을 참조하세요.

Delta Lake 업데이트 및 tables 수정

Delta Lake를 사용하는 원자성 트랜잭션은 데이터 및 메타데이터를 업데이트하기 위한 많은 옵션을 제공합니다. Databricks는 tables의 손상을 방지하기 위해 Delta Lake 파일 디렉터리 내의 데이터 및 트랜잭션 로그 파일과 직접 상호 작용하지 말 것을 권장합니다.

Delta Lake의 증분 및 스트리밍 워크로드

Delta Lake는 Azure Databricks의 구조적 스트리밍에 최적화되어 있습니다. Delta Live Tables 간소화된 인프라 배포, 향상된 크기 조정 및 관리되는 데이터 종속성을 사용하여 네이티브 기능을 확장합니다.

이전 버전의 table 조회

Delta table에 대한 각 쓰기는 새로운 table 버전을 만듭니다. 트랜잭션 로그를 사용하여 table 대한 수정 내용을 검토하고 이전 table 버전을 쿼리할 수 있습니다. Delta Lake 기록작업을 참조하세요.

Delta Lake schema 기능 향상

Delta Lake는 데이터를 기록할 때 schema의 유효성을 검사하여 table에 기록된 모든 데이터가 set요구 사항과 일치하는지 확인합니다.

Delta Lake를 사용하여 파일 관리 및 데이터 인덱싱

Azure Databricks는 Delta Lake에 대해 데이터 파일 크기와 기록에 유지되는 table 버전에 영향을 미치는 여러 기본 parameters을 설정합니다. Delta Lake는 메타데이터 구문 분석과 물리적 데이터 레이아웃의 조합을 사용하여 쿼리를 수행하기 위해 스캔된 파일 수를 줄입니다.

Delta Lake 설정 구성 및 검토

Azure Databricks는 Delta Lake tables 대한 모든 데이터와 메타데이터를 클라우드 개체 스토리지에 저장합니다. 대부분의 구성은 table 수준 또는 Spark 세션 내에서 set 수 있습니다. Delta table 세부 정보를 검토하여 구성된 옵션을 검색할 수 있습니다.

Delta Lake 및 Delta Live Tables 사용하는 데이터 파이프라인

Azure Databricks는 사용자가 데이터를 정리하고 보강할 때 메달리온 아키텍처를 적극적으로 활용하여 일련의 tables을 통해 데이터를 처리할 수 있도록 권장합니다. Delta Live Tables 최적화된 실행 및 자동화된 인프라 배포 및 크기 조정을 통해 ETL 워크로드를 간소화합니다.

Delta Lake 기능 호환성

모든 Delta Lake 기능이 모든 버전의 Databricks Runtime에 있는 것은 아닙니다. Delta Lake 버전 관리에 대한 자세한 내용은 Azure Databricks에서 Delta Lake 기능 호환성을 관리하는 방법을 참조 하세요.

Delta Lake API 설명서

Delta tables대한 대부분의 읽기 및 쓰기 작업의 경우 Spark SQL 또는 Apache Spark DataFrame API를 사용할 수 있습니다.

Delta Lake 관련 SQL 문은 Delta Lake 문을 참조 하세요.

Azure Databricks는 Databricks 런타임에서 Delta Lake API와의 바이너리 호환성을 보장합니다. 각 Databricks 런타임 버전에 패키지된 Delta Lake API 버전을 보려면 Databricks 런타임 릴리스 정보에서 관련 문서의 시스템 환경 섹션을 참조하세요. Python, Scala 및 Java용 Delta Lake API에 대한 설명서는 OSS Delta Lake 설명서를 참조 하세요.