문서 목차
AkashiQ v0.1.0 · 플랫폼
데이터 복구
Iceberg 스냅샷 롤백과 Bronze 기반 재구축으로 잘못 적재된 데이터를 되돌립니다
QUANTUM C&S
규제 환경의 데이터 플랫폼은 "잘못 적재됐을 때 어떻게 되돌리는가" 에 답할 수 있어야 합니다. AkashiQ는 백업 복원이 아니라 레이크하우스가 제공하는 기능으로 복구합니다.
- 원본(Bronze)을 항상 남깁니다.
- Iceberg가 테이블의 스냅샷을 보관합니다.
이 두 가지가 있으면 특정 시점으로 되돌리거나, 원본에서 다시 계산해 복구할 수 있습니다.
계층별 복구 방식
메달리온 계층마다 성격이 달라 복구 방식도 다릅니다.
| 계층 | 복구 방식 | 이유 |
|---|---|---|
| Bronze | 재수집 | 원본이므로 되돌릴 대상이 아니라 다시 받는 대상입니다 |
| Silver | Bronze에서 재구축(replay) | 정제 로직 결과이므로 다시 계산하면 같은 결과가 나옵니다 |
| Gold | 재집계 | Silver가 정상이면 다시 만들 수 있습니다 |
| 카탈로그 · 문서 | 스냅샷 롤백 | 시점 상태로 되돌립니다 |
Silver 재구축 (replay)
Bronze 원본을 다시 읽어 Silver 이력 테이블을 결정적으로 재구축합니다. 같은 입력에 같은 로직이면 같은 결과가 나오므로, 재구축 결과와 외부 정합 비교로 검증할 수 있습니다.
실행 절차
- 복구 화면에서 대상 테이블과 기간을 지정합니다.
- 사유를 입력합니다. (필수)
- 실행하면 재구축 작업이 제출됩니다.
- 진행 상태와 결과를 화면에서 확인합니다.
사용하는 상황
- 정제 로직의 오류를 수정한 뒤 과거 구간을 다시 계산해야 할 때
- 상류 수집 사고로 일부 구간이 비었거나 잘못 들어왔을 때
- 이력 테이블의 정합성을 검증해야 할 때
스냅샷 롤백
문서 카탈로그처럼 시점 상태가 중요한 테이블은 이전 스냅샷으로 되돌립니다.
- 스냅샷 목록에서 되돌릴 시점을 선택합니다.
- 되돌리기 전에 해당 시점의 상태를 조회해 확인합니다.
- 사유를 입력하고 실행합니다.
증분 수집의 기준점(워터마크)이 있는 경우, 기준점을 먼저 조정한 뒤 롤백해야 다음 동기화가 되돌린 구간을 다시 채웁니다. 순서를 지키지 않으면 롤백한 구간이 비어 있는 상태로 남습니다.
안전 장치
복구는 데이터를 바꾸는 작업이므로 다음 통제가 적용됩니다.
| 통제 | 내용 |
|---|---|
| 권한 | 플랫폼 관리자만 실행 가능 |
| 사유 입력 | 무엇을 왜 되돌렸는지 기록 |
| 감사 기록 | 실행자 · 시각 · 대상 · 사유를 감사 로그에 남김 |
| 사전 확인 | 되돌릴 시점의 상태를 먼저 조회 |
⚠️ 주의
파괴적인 단계는 자동화하지 않았습니다. 되돌리기의 판단은 사람이 하고, 시스템은 그 판단을 정확하게 수행하고 기록합니다.
복구 전에 확인할 것
- 원인이 무엇인가 — 수집 실패인지, 정제 로직 오류인지, 원천 데이터 자체의 문제인지
- 어느 계층을 되돌려야 하는가 — Silver 재구축으로 충분한지, 카탈로그 롤백이 필요한지
- 영향 범위는 어디까지인가 — 이 테이블을 참조하는 Gold 테이블과 데이터셋
- 되돌린 뒤 다시 채울 수 있는가 — 증분 기준점 조정이 필요한지
원인 파악은 Pipeline Ops의 DQ 판정과 실행 이력에서 시작합니다.
규제 대응 관점
복구 기능은 편의 기능이 아니라 데이터 무결성 요건의 일부입니다.
- 원본을 보존하므로 어떤 복구도 원천 데이터를 훼손하지 않습니다.
- 모든 복구 실행에 실행자 · 시각 · 사유가 기록됩니다.
- 이력 테이블 구조상 "그 시점에 이 값이 무엇이었는지"를 나중에도 제시할 수 있습니다.