데이터는 흐름을 통해 파이프라인에서 처리 됩니다. 각 흐름은 쿼리 와 일반적으로 대상으로 구성됩니다. 흐름은 쿼리를 일괄 처리로 처리하거나 대상에 대한 데이터 스트림으로 증분 방식으로 처리합니다. 흐름은 Lakeflow Spark Declarative Pipelines의 파이프라인에 속합니다.
일반적으로 파이프라인에서 대상을 업데이트하는 쿼리를 만들 때 흐름이 자동으로 정의되지만 여러 원본의 단일 대상에 추가하는 등 보다 복잡한 처리를 위해 추가 흐름을 명시적으로 정의할 수도 있습니다.
업데이트
흐름은 정의 파이프라인이 업데이트 될 때마다 실행됩니다. 흐름은 사용 가능한 최신 데이터로 테이블을 만들거나 업데이트합니다. 흐름 유형 및 데이터 변경 상태에 따라 업데이트는 새 레코드만 처리하거나 데이터 원본의 모든 레코드를 다시 처리하는 전체 새로 고침을 수행하는 증분 새로 고침을 수행할 수 있습니다.
- 파이프라인 업데이트에 대한 자세한 내용은 파이프라인 업데이트 실행을 참조하세요.
- 업데이트 예약 및 트리거에 대한 자세한 내용은 트리거된 파이프라인 모드와 연속 파이프라인 모드를 참조하세요.
기본 흐름 및 추가 흐름
파이프라인에서 대상을 업데이트하는 쿼리를 만들면 기본 흐름 이 자동으로 정의됩니다. 스트리밍 테이블의 경우 기본 흐름은 각 업데이트와 함께 새 행을 추가하는 추가 흐름이며 대상과 이름이 같습니다. 단일 단계에서 흐름 및 해당 대상을 만드는 것이 파이프라인을 사용하는 가장 일반적인 방법이며, 이를 사용하여 데이터를 수집하거나 변환할 수 있습니다.
또한 여러 흐름이 단일 대상에 데이터를 추가할 수 있도록 대상과 별도로 흐름을 정의할 수 있습니다. 이 기능은 다음을 수행해야 하는 경우에 유용합니다.
- 전체 새로 고침을 요구하지 않고 기존 스트리밍 테이블에 추가하는 스트리밍 원본을 추가합니다.
- 기록 데이터가 누락된 스트리밍 테이블을 백필합니다.
-
UNION절을 사용하지 않고 여러 소스의 데이터를 결합합니다.
기본 및 명시적 흐름을 만드는 예제는 Lakeflow Spark 선언적 파이프라인에서 흐름 사용을 참조하세요.
흐름 유형
스트리밍 테이블 및 구체화된 뷰의 기본 흐름은 추가 흐름입니다. 변경 데이터 캡처 데이터 원본을 읽는 흐름을 만들 수도 있습니다. 다음 표에서는 다양한 유형의 흐름에 대해 설명합니다.
| 흐름 유형 | Description |
|---|---|
| 추가 |
추가 흐름은 원본의 새 레코드가 각 업데이트와 함께 대상에 기록되는 가장 일반적인 흐름 유형입니다. 구조적 스트리밍의 추가 모드에 해당합니다. 대상이 완전히 새로 고쳐지지 않는 한 데이터를 대상에 한 번만 삽입해야 하는 일괄 처리 쿼리를 나타내는 플래그를 추가할 ONCE 수 있습니다. 여러 추가 흐름이 특정 대상에 쓸 수 있습니다.기본 흐름(대상 스트리밍 테이블 또는 구체화된 뷰를 사용하여 생성됨)은 대상과 동일한 이름을 갖습니다. 다른 대상에는 기본 흐름이 없습니다. |
| CDC 자동화(이전에 변경 내용 적용) |
자동 CDC 흐름은 CDC(변경 데이터 캡처) 데이터를 포함하는 쿼리를 수집합니다. 자동 CDC 흐름은 스트리밍 테이블만을 지정할 수 있으며, 원본은 반드시 스트리밍 원본이어야 합니다(ONCE 흐름의 경우에도). 여러 자동 CDC 흐름은 단일 스트리밍 테이블을 대상으로 할 수 있습니다. 자동 CDC 흐름의 대상으로 작동하는 스트리밍 테이블은 다른 자동 CDC 흐름에서만 대상으로 지정할 수 있습니다.CDC 데이터에 대한 자세한 내용은 AUTO CDC API: 파이프라인을 사용하여 변경 데이터 캡처 간소화를 참조하세요. |
| 업데이트(공개 미리 보기) |
업데이트 흐름은 전역의 워터마크가 없는 스트리밍 집계를 싱크로 출력하고, 각 배치에서 변경된 레코드만 내보냅니다. 업데이트 흐름은 Python만 사용할 수 있습니다. update_flow 참조하세요. |
추가 리소스
흐름 및 해당 사용에 대한 자세한 내용은 다음 항목을 참조하세요.