Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

데이터셋 롤백과 다음 빌드 스냅샷

데이터셋 롤백은 데이터와 실행 이력을 이전 상태로 조정합니다. 잘못된 입력이 들어오거나 생성 로직 오류를 발견했을 때 사용할 수 있으며 증분 데이터셋의 증분 상태도 함께 관리합니다. 생성 코드 자체를 되돌리는 동작은 아닙니다.

두 가지 작업을 구분합니다. 과거 트랜잭션이 있으면 그 트랜잭션으로 되돌리고, 돌아갈 트랜잭션이 없는 증분 초기 상태가 필요하면 다음 빌드를 스냅샷으로 실행하도록 예약합니다.

대상과 제약

  • 트랜잭션 기반 데이터셋만 지원합니다.
  • 과거 롤백 대상은 성공한 트랜잭션이어야 합니다.
  • 보존 정책으로 삭제한 트랜잭션으로는 되돌릴 수 없습니다. Data Lineage의 데이터셋 롤백 때문에 제외된 트랜잭션은 다시 대상으로 삼을 수 있습니다.
  • 데이터셋의 Editor 역할이 필요합니다.
  • 생성 로직은 그대로 남으므로 다음 빌드에 적용할 코드 수정은 별도로 수행합니다.
  • 데이터셋 브랜치 모드에서 선택한 브랜치가 없으면 설정된 fallback으로 롤백할 수 있습니다. 실제 적용 브랜치를 확인합니다. 글로벌 브랜치 모드에서는 fallback을 사용하지 않습니다.

다중 출력 변환

같은 작업이 여러 출력을 함께 만들면 모든 출력을 같은 과거 작업이 만든 트랜잭션으로 되돌려야 합니다. 다음 빌드를 스냅샷으로 강제할 때에도 모든 출력에 요청해야 합니다.

일부 출력만 롤백하면 다음 증분 작업이 예상과 달리 스냅샷으로 실행될 수 있습니다. 반대로 일부 출력에만 Force snapshot을 요청하면 다음 작업이 계속 증분으로 실행될 수 있습니다. 출력 하나씩의 화면만 보고 다중 출력 작업의 일관성을 놓치면 안 됩니다.

과거 트랜잭션으로 되돌리기

  1. Data Lineage에서 대상 데이터셋을 선택합니다.
  2. 위쪽 브랜치 선택기에서 작업할 브랜치를 고릅니다.

  1. 아래 History를 열고 돌아갈 트랜잭션을 선택합니다.

  1. Rollback to transaction을 선택합니다.
  2. 확인 창에서 대상과 쉽게 되돌릴 수 없다는 경고를 확인한 뒤 Rollback dataset을 선택합니다.

완료 후 History에서 롤백으로 제외된 트랜잭션에 취소선이 표시되는지 확인합니다.

이 데이터셋이 온톨로지의 Object Storage v2 객체 유형을 뒷받침하면 객체 유형의 replacement pipeline을 성공적으로 실행하여 전체 재인덱싱하는 수동 처리가 필요합니다. 데이터셋 롤백만으로 객체 저장 상태까지 반영되었다고 판단하지 않습니다.

다음 빌드를 스냅샷으로 예약

Force snapshot은 즉시 데이터를 바꾸거나 트랜잭션 이력을 수정하지 않습니다. 다음 빌드 때 스냅샷을 수행합니다. 입력 데이터와 로직에 변화가 없다면 빌드가 생략될 수 있으므로 실제 재실행에는 force build도 필요합니다.

  1. 대상 데이터셋과 브랜치를 선택합니다.
  2. History를 열되 특정 트랜잭션은 선택하지 않습니다.

  1. Summary 오른쪽 위의 Force snapshot을 선택합니다.

  1. 요청을 되돌릴 수 없다는 경고를 확인한 뒤 Queue snapshot으로 예약합니다.

실수로 Force snapshot을 예약했는데 원래 의도가 과거 트랜잭션 롤백이었다면 바로 롤백을 이어서 수행하지 않습니다. 부분적으로 롤백된 상태가 될 수 있습니다. 먼저 데이터셋을 빌드하여 예약한 스냅샷을 실행한 뒤 원래 의도한 롤백을 수행합니다. 다중 출력이면 모든 출력의 상태도 함께 맞춰야 합니다.