본문으로 건너뛰기

마트 생명주기

데이터 마트 관리

데이터 마트는 생성부터 삭제까지 명확한 생명주기를 가지며, 각 단계에서 상태를 추적하고 관리할 수 있습니다.

생명주기 단계

  1. 생성(Created): 마트 정의가 등록되고 초기 데이터가 적재됩니다
  2. 활성(Active): 마트가 정상 운영 중이며, 스케줄에 따라 갱신됩니다
  3. 갱신 중(Refreshing): 마트 데이터가 새로고침되고 있는 상태입니다
  4. 오류(Error): 갱신 과정에서 오류가 발생한 상태입니다
  5. 삭제(Deleted): 마트가 삭제되어 더 이상 사용할 수 없습니다

갱신(Refresh)

마트 갱신은 정의된 SQL을 재실행하여 데이터를 최신 상태로 업데이트하는 과정입니다.

  • 수동 갱신: API 호출 또는 UI의 갱신 버튼을 통해 즉시 갱신합니다
  • 자동 갱신: 마트 생성 시 설정한 스케줄에 따라 자동으로 갱신됩니다
  • 갱신 이력: 모든 갱신 시도의 시작/종료 시간, 상태, 처리 건수가 기록됩니다

갱신 이력 조회

마트별로 모든 갱신 이력을 조회할 수 있어 데이터 신선도와 갱신 성공률을 모니터링할 수 있습니다.

안전 동작 (가드레일)

마트가 소스 데이터나 자기 자신을 손상시키지 않도록 다음 가드레일이 적용됩니다 (#2317).

  • 생성 실패 시 자동 롤백 — 초기 물질화(적재)가 실패하면 부분 생성된 테이블·정의를 되돌려 broken-mart 가 남지 않습니다.
  • 새로고침 실패 노출 — 갱신이 실패하면 마트가 Error 상태가 되고 UI 상단 배너로 실패 원인이 표시됩니다 (조용히 실패하지 않음).
  • 삭제 부분 실패 노출 — 삭제 시 Trino 테이블 DROP 이 일부 실패하면(이미 없음·권한 등) 응답과 UI 에 부분 실패가 명시됩니다 — 메타데이터만 지워지고 테이블이 남는 상황을 숨기지 않습니다.

대상 카탈로그 allowlist(소스 테이블 덮어쓰기 방지, #2319)는 마트 생성 §대상 위치 선택을 참조하세요.

API 엔드포인트

MethodPathDescription
POST/api/v1/data-marts/{mart_id}/refresh마트 수동 갱신
GET/api/v1/data-marts/{mart_id}/history갱신 이력 조회
PUT/api/v1/data-marts/{mart_id}마트 설정 수정
DELETE/api/v1/data-marts/{mart_id}마트 삭제

:::warning 수정·삭제·갱신에는 워크스페이스 자격이 필요하다 (#2798) 관리자(admin) 역할만으로는 다른 워크스페이스에 귀속된 마트를 수정·삭제·갱신할 수 없습니다 — 요청이 403 으로 거부됩니다. 필요한 자격은 둘 중 하나입니다:

  • 해당 마트가 귀속된 워크스페이스를 활성 워크스페이스로 선택한 상태 (상단 워크스페이스 스위처), 또는
  • ws_break_glass 역할 (플랫폼 운영자용 — 역할·권한 참조)

목록에 마트가 보이고 버튼이 눌린다고 해서 실행 권한이 있는 것은 아닙니다. 수집 파일·수집 정책·파이프라인 취소도 같은 규칙을 따릅니다. :::

관련 문서