Delta Live Tables 파이프라인에서 업데이트 실행
이 문서에서는 파이프라인 업데이트를 설명하고 업데이트를 트리거하는 방법에 대한 세부 정보를 제공합니다.
파이프라인 업데이트란?
파이프라인을 만들고 실행할 준비가 되면 업데이트시작합니다. 파이프라인 업데이트는 다음을 수행합니다.
- 올바른 구성으로 클러스터를 시작합니다.
- 정의된 모든 테이블 및 뷰를 검색하고 잘못된 열 이름, 누락된 종속성 및 구문 오류와 같은 분석 오류를 확인합니다.
- 사용 가능한 최신 데이터를 사용하여 테이블 및 뷰를 만들거나 업데이트합니다.
파이프라인의 소스 코드에서 문제를 확인할 때, 테이블 생성 또는 업데이트를 기다릴 필요 없이 을(를) 사용하여 업데이트의 유효성을 검사할 수 있습니다. 이 기능은 파이프라인을 개발하거나 테스트할 때 유용합니다. 파이프라인에서 잘못된 테이블 또는 열 이름과 같은 오류를 빠르게 찾아 수정할 수 있기 때문입니다.
파이프라인 업데이트는 어떻게 트리거되는가?
다음 옵션 중 하나를 사용하여 파이프라인 업데이트를 시작합니다.
업데이트 트리거 | 세부 정보 |
---|---|
수동 | 파이프라인 UI, 파이프라인 목록 또는 파이프라인에 연결된 Notebook에서 파이프라인 업데이트를 수동으로 트리거할 수 있습니다. 수동으로 파이프라인 업데이트를 트리거하는 방법에 대해을 참조하고, notebooks에서 Delta Live Tables 파이프라인을 개발하고 디버그하는 방법에 대해 및을 참조하세요. |
예정됨 | 작업을 사용하여 파이프라인에 대한 업데이트를 예약할 수 있습니다. 작업에 대한 |
프로그래매틱 | 타사 도구, API 및 CLI를 사용하여 프로그래밍 방식으로 업데이트를 트리거할 수 있습니다. 워크플로 및 |
파이프라인 업데이트를 수동으로 실행하기
다음 옵션 중 하나를 사용하여 파이프라인 업데이트를 수동으로 트리거합니다.
- 파이프라인 세부 정보 페이지에서 Delta Live Tables 시작 아이콘
단추를 클릭합니다.
- 파이프라인 목록에서 작업 열에서
클릭합니다.
참고 항목
수동으로 트리거된 파이프라인 업데이트의 기본 동작은 파이프라인에 정의된 모든 데이터 세트를 새로 고치는 것입니다.
파이프라인 리프레시 세맨틱스
다음 표에서는 기본 새로 고침 및 전체 새로 고침을 위한 구체화된 뷰 및 스트리밍 테이블에 대한 동작을 설명합니다.
업데이트 유형 | 실체화된 뷰 의미 체계 | 스트리밍 테이블 의미 체계 |
---|---|---|
새로 고침(기본값) | 정의 쿼리에 대한 현재 결과를 반영하도록 결과를 업데이트합니다. | 스트리밍 테이블 및 흐름에 정의된 논리를 통해 새 레코드를 처리합니다. |
전체 새로 고침 | 정의 쿼리에 대한 현재 결과를 반영하도록 결과를 업데이트합니다. | 스트리밍 테이블에서 데이터를 지우고, 흐름에서 상태 정보(검사점)를 지우고, 데이터 원본의 모든 레코드를 다시 처리합니다. |
기본적으로 파이프라인의 모든 구체화된 뷰 및 스트리밍 테이블은 각 업데이트와 함께 새로 고쳐집니다. 필요에 따라 다음 기능을 사용하여 업데이트에서 테이블을 생략할 수 있습니다.
-
새로 고침테이블 선택: 업데이트를 실행하기 전에 이 UI를 사용하여 구체화된 뷰 및 스트리밍 테이블을 추가하거나 제거합니다. 선택한 테이블에 대한 파이프라인 업데이트를 시작하는 방법은
을 참조하세요. -
실패한 테이블 새로 고침: 다운스트림 종속성을 포함하여 실패한 구체화된 뷰 및 스트리밍 테이블에 대한 업데이트를 시작합니다. 실패한 테이블에 대한 파이프라인 업데이트 시작
을 참조하세요.
이러한 두 기능 모두 기본 새로 고침 의미 체계 또는 전체 새로 고침을 지원합니다. 필요에 따라 새로 고침 대화 상자를 사용하여 실패한 테이블에 대한 새로 고침을 실행할 때 추가 테이블을 제외할 수 있습니다.
전체 새로 고침을 사용해야 하나요?
Databricks는 필요한 경우에만 전체 새로 고침을 실행하는 것이 좋습니다. 전체 새로 고침은 항상 데이터 세트를 정의하는 논리를 통해 지정된 데이터 원본의 모든 레코드를 다시 처리합니다. 전체 새로 고침을 완료하는 시간과 리소스는 원본 데이터의 크기와 상관 관계가 있습니다.
구체화된 뷰는 기본 새로 고침 또는 전체 새로 고침 사용 여부와 동일한 결과를 반환합니다. 스트리밍 테이블과 함께 전체 새로 고침을 사용하면 모든 상태 처리 및 검사점 정보가 다시 설정되고 입력 데이터를 더 이상 사용할 수 없는 경우 레코드가 삭제될 수 있습니다.
Databricks는 입력 데이터 원본에 테이블 또는 뷰의 원하는 상태를 다시 만드는 데 필요한 데이터가 포함된 경우에만 전체 새로 고침을 권장합니다. 입력 원본 데이터를 더 이상 사용할 수 없고 전체 새로 고침을 실행한 결과를 고려합니다.
데이터 원본 | 입력 데이터가 없는 이유 | 전체 새로 고침의 결과 |
---|---|---|
Kafka | 짧은 보존 임계값 | Kafka 원본에 더 이상 없는 레코드는 대상 테이블에서 삭제됩니다. |
오브젝트 스토리지의 파일 | 수명 주기 정책 | 원본 디렉터리에 더 이상 없는 데이터 파일은 대상 테이블에서 삭제됩니다. |
테이블의 기록 | 준수를 위해 삭제됨 | 원본 테이블에 있는 레코드만 처리됩니다. |
테이블 또는 뷰에서 전체 새로 고침이 실행되지 않도록 하려면 테이블 속성 pipelines.reset.allowed
false
설정합니다.
Delta Live Tables 테이블 속성참조하세요.
추가 흐름 사용하여 전체 새로 고침 없이 기존 스트리밍 테이블에 데이터를 추가할 수도 있습니다.
선택한 테이블에 대한 파이프라인 업데이트 시작
필요에 따라 파이프라인에서 선택한 테이블에 대해서만 데이터를 다시 처리할 수 있습니다. 예를 들어 개발 중에는 단일 테이블만 변경하고 테스트 시간을 줄이려고 하거나 파이프라인 업데이트가 실패하고 실패한 테이블만새로 고치려고 합니다.
참고 항목
트리거된 파이프라인에서만 선택적 새로 고침을 사용할 수 있습니다.
선택한 테이블만 새로 고치는 업데이트를 시작하려면 파이프라인 세부 정보 페이지에서 다음을 수행합니다.
새로 고침을 위한 테이블 선택을 클릭하십시오. 새로 고침 테이블 선택 대화 상자가 나타납니다.
새로 고침을 위한 테이블 선택 단추가 보이지 않으면, 파이프라인 세부 정보 페이지에 최신 업데이트가 표시되고 업데이트가 완료되었는지 확인하세요. 예를 들어 업데이트가 실패했기 때문에 DAG가 최신 업데이트에 표시되지 않으면 새로 고침을 위한 테이블 선택 단추가 표시되지 않습니다.
새로 고칠 테이블을 선택하려면 각 테이블을 클릭합니다. 선택한 테이블이 강조 표시되고 레이블이 지정됩니다. 업데이트에서 테이블을 제거하려면 테이블을 다시 클릭합니다.
새로 고침 선택클릭합니다.
참고 항목
새로 고침 선택 단추는 선택한 테이블 수를 괄호로 표시합니다.
선택한 테이블에 대해 이미 수집된 데이터를 다시 처리하려면
실패한 테이블에 대한 파이프라인 업데이트 시작
파이프라인 그래프의 하나 이상의 테이블에 오류가 발생하여 파이프라인 업데이트가 실패하는 경우 실패한 테이블 및 모든 다운스트림 종속성만 업데이트할 수 있습니다.
참고 항목
제외된 테이블은 실패한 테이블에 의존하더라도 새로 고쳐지지 않습니다.
실패한 테이블을 업데이트하려면 파이프라인 세부 정보 페이지에서 실패한 테이블 새로 고침을 클릭합니다.
선택한 실패한 테이블만 업데이트하려면 다음을 수행합니다.
새로 고침 실패 테이블 단추 옆의 클릭하고 새로 고침단추 아래쪽 테이블을 선택합니다. 새로 고침 테이블 선택 대화 상자가 나타납니다. 새로 고칠 테이블을 선택하려면 각 테이블을 클릭합니다. 선택한 테이블이 강조 표시되고 레이블이 지정됩니다. 업데이트에서 테이블을 제거하려면 테이블을 다시 클릭합니다.
새로 고침 선택클릭합니다.
참고 항목
새로 고침 선택 단추는 선택한 테이블 수를 괄호로 표시합니다.
선택한 테이블에 대해 이미 수집된 데이터를 다시 처리하려면
테이블이 업데이트되는 것을 기다리지 않고 파이프라인에서 오류를 확인합니다.
Important
Delta Live Tables Validate
업데이트 기능은 공개 미리 보기 중에 있습니다.
전체 업데이트를 실행하지 않고 파이프라인의 소스 코드가 유효한지 확인하려면 유효성 검사사용합니다.
Validate
업데이트는 파이프라인에 정의된 데이터 세트 및 흐름의 정의를 확인하지만 데이터 세트를 구체화하거나 게시하지는 않습니다. 잘못된 테이블 또는 열 이름과 같은 유효성 검사 중에 발견된 오류는 UI에 보고됩니다.
Validate
업데이트가 완료되면 이벤트 로그에 Validate
업데이트와 관련된 이벤트만 표시되고 DAG에 메트릭이 표시되지 않습니다. 오류가 발견되면 이벤트 로그에서 세부 정보를 사용할 수 있습니다.
최신 Validate
업데이트에 대한 결과만 볼 수 있습니다.
Validate
업데이트가 가장 최근에 실행된 업데이트인 경우 업데이트 기록선택하여 결과를 볼 수 있습니다.
Validate
업데이트 후에 다른 업데이트를 실행하는 경우 결과는 더 이상 UI에서 사용할 수 없습니다.
개발 및 프로덕션 모드
개발 모드와 프로덕션 모드 간에 전환하여 파이프라인 실행을 최적화할 수 있습니다. 파이프라인 UI에서 버튼을 사용해 두 모드 사이를 전환합니다. 기본적으로 파이프라인은 개발 모드에서 실행됩니다.
개발 모드에서 파이프라인을 실행하는 경우 Delta Live Tables 시스템은 다음을 수행합니다.
- 다시 시작 오버헤드를 피하기 위해 클러스터를 재사용합니다. 기본적으로 클러스터는 개발 모드가 사용하도록 설정되면 2시간 동안 실행됩니다.
설정을 사용하여 Delta Live Tables 파이프라인에 대한 컴퓨팅 구성을 변경할 수 있습니다. - 오류를 즉시 검색하고 수정할 수 있도록 파이프라인 다시 시도를 사용하지 않도록 설정합니다.
프로덕션 모드에서 Delta Live Tables 시스템은 다음을 수행합니다.
- 메모리 누수 및 부실 자격 증명을 비롯한 특정 복구 가능한 오류에 대해 클러스터를 다시 시작합니다.
- 클러스터 시작 실패와 같은 특정 오류 발생 시 실행을 다시 시도합니다.
참고 항목
개발 모드와 프로덕션 모드 간 전환은 클러스터 및 파이프라인 실행 동작만 제어합니다. 테이블을 게시하기 위한 카탈로그의 스토리지 위치 및 대상 스키마는 파이프라인 설정의 일부로 구성되어야 하며 모드 간에 전환할 때는 영향을 받지 않습니다.