데이터 통합파이프라인 빌딩일정일정 생성

본 번역은 검증되지 않았습니다. AIP를 통해 영문원문으로부터 번역되었습니다.

일정 생성

Data Lineage 일정 편집기에서 새로운 일정을 생성하고 기존 일정을 편집할 수 있습니다. 또한 기존 일정에 대한 메트릭을 확인하고 일정이 데이터셋을 빌드하는 방식을 확인할 수 있습니다.

일정 편집기로 이동

다음 단계에서 Data Lineage 일정 편집기로 이동하여 새 일정을 생성할 수 있습니다.

  1. 빌드 일정을 설정하려는 데이터셋의 데이터셋 미리보기로 이동한 다음 액션 메뉴를 열고 일정 관리를 선택합니다.

액션 메뉴에서 일정 관리

  1. 이렇게 하면 Data Lineage 그래프가 나타나고, 오른쪽 일정 패널에 데이터셋에 영향을 주는 모든 현재 일정이 나열됩니다.

    일정을 생성하려면 일정 생성 버튼을 클릭합니다.

    새 일정 생성

  2. 이렇게 하면 일정 편집기가 열립니다.

    Data Lineage 일정 편집기

일정 정의

일정을 정의하려면 다음 섹션을 완료해야 합니다.

분기 선택

Data Lineage에서 일정을 생성하면 그래프에서 구성된 분기(폴백 분기 포함)에 일정이 적용됩니다.

대상 데이터셋

대상 데이터셋은 빌드의 끝에 있는 데이터셋을 지정합니다. 기본적으로 이러한 데이터셋만 빌드됩니다. 다른 구성에서는 빌드 중인 데이터셋의 라인 끝에 이러한 데이터셋이 있을 수 있습니다.

빌드 일정의 대상 데이터셋

대상 데이터셋은 그래프에 추가하여 대상으로 표시함으로써 선택할 수 있습니다.

그래프에 대상 데이터셋 추가

데이터셋은 Data Lineage 창 오른쪽 상단에 설정된 분기에서 빌드됩니다. 그래프의 데이터셋은 일정에 의해 어떻게 영향을 받거나 영향을 주는지에 따라 색상이 지정됩니다.

제외된 데이터셋

제외된 데이터셋은 빌드할 데이터셋을 결정할 때 그래프 순회 중 무시될 데이터셋을 지정합니다. 무시된 데이터셋의 상류 데이터셋은 빌드되지 않습니다.

빌드에서 데이터셋 제외

언제 빌드할지

트리거는 빌드가 실행될 시기를 지정합니다. 트리거에서 정의된 조건이 충족되면 빌드가 실행됩니다.

기본 트리거 유형은 다음과 같습니다:

트리거는 더 복잡한 복합 트리거를 생성하기 위해 결합할 수 있습니다. 트리거 편집기에서 트리거 결합 방법을 선택할 수 있습니다:

  • 이러한 트리거 중 하나: 구성 요소 트리거 중 하나가 충족되면 트리거가 충족됩니다.

  • 이러한 트리거 모두: 구성 요소 트리거 모두가 충족되면 트리거가 충족됩니다.

  • 고급 구성: 구성 요소 트리거를 결합하는 방법을 명시적으로 설정합니다.

    고급 구성이 선택되면 두 트리거 사이에 ANDOR 키워드를 삽입하여 구성 요소 트리거가 결합됩니다. 복합 트리거는 괄호 () 내에 놓임으로써 추가로 결합할 수 있습니다.

    • AND는 구성 요소 트리거 모두가 충족되면 복합 트리거가 충족된다는 것을 나타냅니다.

    • OR는 구성 요소 트리거 중 하나가 충족되면 복합 트리거가 충족된다는 것을 나타냅니다.

    복합 트리거에 대해 자세히 알아보기.

빌드 유형

빌드 유형은 선택한 데이터셋을 빌드하는 방법을 지정합니다:

  • 단일 빌드: 대상 데이터셋을 빌드합니다(다른 데이터셋은 빌드되지 않음).

  • 전체 빌드(상류 포함): 대상 데이터셋과 이 대상의 상류 데이터셋을 모두 빌드합니다(제외된 데이터셋 제외). 빌드된 데이터셋은 상류 종속성이 변경되면 변경될 수 있습니다.

  • 연결 빌드: 입력 데이터셋(제외)과 대상 데이터셋(포함) 사이의 모든 데이터셋을 빌드합니다. 데이터셋이 입력 데이터셋과 대상 데이터셋 사이에 있지만 명시적으로 입력으로 추가된 경우, 일정에 의해 여전히 빌드됩니다. 데이터셋이 대상 데이터셋으로 선택되었지만 입력 데이터셋에서 대상 데이터셋까지 빌드 경로가 없는 경우 대상 데이터셋은 빌드되지 않습니다.

연결 빌드의 경우, 대상 데이터셋과 상류 데이터셋을 연결하는 모든 데이터셋은 일정이 설정된 분기의 작업 사양 경로에 의해 연결되어야 합니다.

위에서 설명한 내용을 D1, ..., D6 데이터셋이 있는 아래 예제 리니지로 설명하겠습니다. 여기서 데이터셋 D2의 두 개 다른 분기가 D3와 D4의 입력으로 사용됩니다. 마스터 브랜치에서 입력 D1과 대상 D5, D6을 사용하는 연결 빌드 일정은 D2, D4, D6만 빌드하려고 시도합니다.

이러한 동작은 마스터 브랜치에서 입력 D1에서 대상 D6까지의 연결 빌드 선택이 데이터셋 D2, D4, D6을 선택하기 때문입니다. 데이터셋 D1과 D6 사이에 작업 사양 경로가 있기 때문입니다. 그러나 입력 D1에서 대상 D5까지의 연결 빌드 선택은 마스터 브랜치를 따라 작업 사양 경로가 끊어져 있기 때문에 존재하지 않습니다.

D1 (master) --> D2 (master) --> D4 (master) --> D6 (master)  # 마스터 브랜치에서의 커밋 순서는 D1 -> D2 -> D4 -> D6 입니다.
                 |
                 | D2 (develop)  # D2에서 develop 브랜치가 분기되었습니다.
                 |
                  --> D3 (master) --> D5 (master)  # develop 브랜치에서의 커밋 순서는 D3 -> D5 입니다.

이 예제에서 데이터셋 D3을 예약된 빌드에 포함시키려면 빌드를 전체 빌드로 변경해야 합니다. 이렇게 하면 D3와 함께 D5의 상류에 있는 입력 D1도 포함됩니다. 또는 다음과 같이 연결 빌드 선택을 유지하려면, D2(개발)를 입력값으로 하고 D3을 결과물로 하는 변환을 편집하여 마스터 브랜치에 추가 더미 입력 D7을 포함시킬 수 있습니다. 입력 D1과 대상 D5, D6이 있는 마스터 브랜치에서의 연결 예약 빌드는 이제 D2, D3, D4, D5 및 D6을 빌드합니다.

D1 (master) --> D2 (master) --> D4 (master) --> D6 (master)  # 마스터 브랜치에서 D1에서 D6까지의 커밋
                 |
                 | D2 (develop)  # D2에서 분기한 개발 브랜치
                 |
D7 (master) -------> D3 (master) --> D5 (master)  # 마스터 브랜치에서 D7에서 D5까지의 커밋
빌드 브랜치 선택 연결하기

연결 빌드 일정을 위해, 스케줄을 포함하는 브랜치와 다른 브랜치에서 데이터셋을 사용하고 있다면, 이러한 데이터셋이 빌드에 포함되기 위해서는 입력과 타겟 빌드 사이에 같은 브랜치에서 연결 작업 spec 경로가 존재해야 합니다.

빌드 범위

데이터 파이프라인의 동적인 특성을 고려하여, 빌드에 포함될 데이터셋의 집합은 일정이 트리거될 때마다 평가됩니다. 빌드 범위는 일정 빌드의 경계를 정의하며, 이 경계는 파이프라인의 콘텐츠가 변경되더라도 고정됩니다. 두 가지 범위 설정 옵션이 있습니다:

  1. 프로젝트별: 일정은 선택한 프로젝트 내에서만 빌드 가능한 데이터셋을 빌드할 수 있습니다.
  2. 사용자 계정별: 일정은 스케줄 작성자/에디터가 빌드할 수 있는 데이터셋만 빌드할 수 있습니다.

프로젝트 범위 설정

프로젝트 범위 설정은 일정이 선택한 프로젝트 내의 데이터셋에서만 실행되도록 보장합니다. 이는 일정이 사용자 권한 변경에 영향받지 않고 실행될 수 있게 합니다. 이 옵션은 빌드 콘텐츠가 선택한 프로젝트 내에서 실행할 수 없을 정도로 변경될 가능성이 낮을 때 가장 신뢰할 수 있습니다(아래에 설명되어 있음).

빌드는 다음 경우에 프로젝트 범위로 설정할 수 없습니다:

  • 프로젝트에서 일정을 생성할 권한이 없는 경우.
  • 데이터셋을 빌드할 충분한 권한이 없는 경우.
  • 일정 설정이 제거 표시가 있는 데이터셋을 포함하는 경우(권한으로 그래프를 색칠할 때 Data Lineage에서 확인할 수 있음).
  • 일정 설정이 사용자 계정으로 빌드해야 하는 데이터셋을 포함하는 경우.
  • 일정 콘텐츠가 구별되는 프로젝트 집합으로 해결될 수 없는 경우.

사용자 범위 설정

사용자 범위 설정을 사용하면, 일정 빌드는 일정을 마지막으로 편집(또는 생성)한 사용자를 대신해서 트리거됩니다. 따라서, 빌드는 사용자가 빌드할 수 있는 데이터셋만 포함합니다. 이 옵션은 예정된 파이프라인이 변경되어 프로젝트 범위 설정을 불가능하게 할 가능성이 높을 때 가장 신뢰할 수 있습니다(예: 데이터셋이 다른 프로젝트로 이동, 새로운 데이터셋이 사용자 계정으로 실행해야 하는 경우 등).

경고

사용자가 비활성화되거나 빌드에 필수적인 데이터셋에 대한 권한을 잃으면, 일정 빌드는 시작하지 못할 것입니다. 사용자 계정으로 범위를 설정할 때, 계정이 신뢰할 수 있는 권한을 가지고 있고 사용자가 비활성화될 예정이라면 소유권을 변경해야 함을 기억하세요.

고급 설정

고급 설정은 추가적인 빌드 옵션을 명시합니다:

advanced-settings

  • 강제 빌드: 빌드를 실행할 때 적합성 정보를 무시합니다. 모든 데이터셋이 무례하더라도 빌드됩니다. 이 옵션은 거의 필요하지 않습니다. 이 옵션이 필요한 드문 경우는 다음과 같습니다:

    1. Data Connection Sync: Data Connection Sync는 외부에서 유래된 입력값이 있기 때문에 항상 최신 상태로 표시됩니다. Foundry는 외부 데이터에 업데이트가 있었는지 알 수 없습니다. 우리는 Data Connection Sync를 빌드의 나머지 부분과 별도로 일정화하는 것을 추천합니다. 이를 통해 동기화만 강제로 빌드될 수 있도록 합니다.
    2. API 호출을 하는 변환: Data Connection Sync와 마찬가지로 API 호출에 대한 최신 상태 개념이 없습니다. 이러한 변환은 실행될 수 있도록 강제 빌드가 필요합니다. 우리는 이 부분의 빌드를 별도로 일정화하는 것을 추천합니다. 이를 통해 다른 데이터셋을 불필요하게 빌드하는 것을 피할 수 있습니다.
    3. Phonograph 동기화
  • 실패 시 빌드 중단: 빌드에 포함된 어떤 작업이든 성공하지 못하면, 다른 모든 작업을 취소하고 즉시 빌드를 완료합니다.

  • 실패한 작업을 위한 시도 횟수를 사용자 정의: 실패한 작업을 위한 실행 시도 횟수입니다. 재시도 작업은 같은 빌드의 일부로 실행됩니다. 작업은 모든 재시도가 시도되거나 재시도를 수행할 수 없다는 오류가 발생할 때까지 실패로 간주되지 않습니다. 이 값을 1로 설정하면 재시도를 방지할 수 있습니다. 왜냐하면 작업은 한 번만 시도될 것이기 때문입니다. 모든 실패 유형이 재시도될 수 있는 것은 아님을 유의하세요. 일정 실행 시 재시도 횟수는 관리자가 설정한 최대값으로 제한됩니다.

  • 빌드 완료 시 알림 전송: 일정 빌드에 대해 기본적으로 알림이 전송되지 않습니다. 이를 활성화하려면, 이 옵션을 선택하세요.

일정 저장하기

일정을 정의한 후, 일정 저장하기 버튼을 클릭하세요.

이는 당신을 일정 페이지로 돌려보낼 것이며, 이곳에서 저장된 일정을 볼 수 있어야 합니다.