이 문서에서는 유지 관리하는 메타데이터에서 파이프라인을 생성하는 도구를 제공하는 Databricks Labs 프로젝트인 dlt-meta를 소개합니다.
비고
databrickslabs GitHub 계정의 모든 프로젝트와 마찬가지로 오픈 소스 dlt-meta 프로젝트는 탐색 목적으로만 존재합니다. Azure Databricks는 이를 지원하거나 SLA(서비스 수준 계약)를 제공하지 않습니다. 이 프로젝트와 관련된 문제에 대한 Azure Databricks 지원 티켓을 제출하지 마세요. 대신 시간 허용으로 검토될 GitHub 문제를 제출합니다.
dlt-meta란?
Lakeflow Spark 선언적 파이프라인을 사용하면 테이블을 선언적으로 지정하고 파이프라인에서 테이블을 만들고 원본 데이터가 변경되면 최신 상태로 유지하는 흐름을 생성할 수 있습니다. 그러나 조직에 수백 개의 테이블이 있는 경우 이러한 파이프라인을 생성하고 관리하는 데 시간이 오래 걸리며 일관성 없는 관행이 발생할 수 있습니다.
dlt-meta 프로젝트는 Lakeflow Spark 선언적 파이프라인에서 작동하도록 설계된 메타데이터 기반 메타프로그래밍 프레임워크입니다. 이 프레임워크를 사용하면 JSON 및 YAML 파일 집합에 기록된 메타데이터를 활용하여 브론즈 및 실버 데이터 파이프라인을 자동화할 수 있습니다. dlt-meta 엔진은 Python 코드를 사용하여 메타데이터에 설명된 흐름에 대한 파이프라인 코드를 동적으로 생성합니다. 파이프라인에 대한 메타데이터를 생성하고 dlt-meta는 파이프라인을 생성합니다.
논리를 한 곳에서 중앙 집중식으로(메타데이터) 사용하면 시스템이 더 빠르고 재사용 가능하며 유지 관리가 더 쉽습니다.
비고
dlt-meta 프로젝트는 Azure Databricks의 이전 Delta Live Tables 기능에 대해 명명되었습니다. Delta Live 테이블 은 Lakeflow Spark 선언적 파이프라인으로 대체되었으며, dlt-meta는 Lakeflow Spark 선언적 파이프라인에서 작동합니다.
dlt-meta의 이점
dlt-meta에는 두 가지 주요 사용 사례가 있습니다.
- 간단히 많은 수의 테이블을 수집하고 정리합니다.
- 여러 파이프라인 및 사용자에 데이터 엔지니어링 표준을 적용합니다.
메타데이터 기반 접근 방식을 사용할 경우의 이점은 다음과 같습니다.
- 메타데이터 유지 관리 작업은 Python 또는 SQL 코드에 대한 지식 없이도 수행할 수 있습니다.
- 코드가 아닌 메타데이터를 유지 관리하려면 오버헤드가 적고 오류가 줄어듭니다.
- 코드는 dlt-meta에 의해 생성되므로 일관성을 유지하고 파이프라인 및 게시된 테이블에서 사용자 지정 코드가 적습니다.
- 데이터를 가장 효율적으로 업데이트하는 데 필요한 파이프라인 수를 생성하여 메타데이터 내의 파이프라인으로 테이블을 쉽게 그룹화할 수 있습니다.
어떻게 작동하나요?
다음 이미지는 dlt-meta 시스템의 개요를 보여줍니다.
- 메타데이터 파일을 dlt-meta에 대한 입력으로 만들어 원본 파일 및 출력, 품질 규칙 및 필요한 처리를 지정합니다.
- dlt-meta 엔진은 온보딩 파일을 DataflowSpec 이라는 데이터 흐름 사양으로 컴파일하고 나중에 사용하기 위해 저장합니다.
- dlt-meta 엔진은 DataflowSpec을 사용하여 브론즈 테이블을 생성하는 파이프라인을 만듭니다. 이렇게 하면 메타데이터 파일을 사용하여 원본 데이터를 읽고 품질 규칙과 일치하도록 올바른 데이터 기대치를 적용합니다.
- 다음으로 dlt-meta 엔진은 DataflowSpec을 사용하여 실버 테이블을 생성하는 추가 파이프라인을 만듭니다. 메타데이터 파일을 사용하여 시스템에 적절한 변환 및 기타 처리를 적용합니다.
dlt-meta에서 생성된 파이프라인을 실행하여 원본 데이터가 업데이트될 때 출력을 최신 상태로 유지합니다.
시작하려면 어떻게 해야 합니까?
dlt-meta를 사용하려면 다음을 수행해야 합니다.
- dlt-meta 솔루션을 배포하고 구성합니다.
- 브론즈 및 실버 레이어 테이블에 대한 메타데이터를 준비합니다.
- 메타데이터를 온보딩하는 작업을 만듭니다.
- 메타데이터를 사용하여 테이블에 대한 파이프라인을 만듭니다.
GitHub의 dlt-meta 설명서에는 이 프로세스를 시작하는 데 도움이 되는 자습서가 있습니다. 자세한 내용은 GitHub에서 dlt-meta 시작하기 를 참조하세요.