# 데이터 정합성·정규화·역정규화·DBA 계약 ## 데이터 계층 | Layer | 내용 | 불변조건 | |---|---|---| | L0 | Source/License/SLA/Schema/Timezone/Unit | 승인 없는 source 사용 금지 | | L1 | Raw payload/event/published/ingested/hash | append-only, 원문 overwrite 금지 | | L2 | Canonical PIT/revision/valid-time/tradable-session | lookahead 0 | | L3 | DQ/Quarantine/Lineage/Dataset Manifest | 격리 데이터 추천 금지 | | L4 | Feature/Forecast/Risk/Evidence VersionSet | Dataset/Model/Config/Code/Contract SHA | | L5 | Ledger/Decision/Review/Publish/Outcome | correction/reversal event | | L6 | Read Model | ProjectionVersion/Watermark/Stale/Rebuild | | L7 | Backtest/ModelCard/Release Evidence | artifact hash/environment manifest | ## 정규화 원장, Lot, Fill, Cash, 기업행사, 비용표, Model Version, Metric Definition, Schedule, Request, Observation, Proposal, Review는 별도 엔터티로 관리한다. source key와 valid-time을 unique constraint로 보호한다. JSON은 원본 증거와 설명 bundle에 사용하되 핵심 조회키와 상태를 JSON에 숨기지 않는다. ## 역정규화 운영 Dashboard와 고객 리포트 Read Model에만 허용한다. 반드시 Owner, ProjectionVersion, SourceWatermark, BuiltAt, StaleAt, Rebuild command, diff 검증이 있어야 한다. Write Model을 화면에서 직접 조합하지 않는다. ## DBA P0 - 승인된 규모에 따라 partition/index/retention을 결정한다. 근거 없는 선제 partition은 금지한다. - migration fresh/upgrade/re-run/failure-recovery 4시나리오를 자동화한다. - append-only trigger와 correction workflow를 maker-checker E2E로 실증한다. - PIT 핵심 테이블의 `published_at <= decision_cutoff`를 query/test 모두에서 검증한다. - total return, delisting return, split/dividend/right/merger가 Lot·현금·원가에 일관되게 반영되는 Golden을 만든다. - backup/restore와 RPO/RTO를 실제 측정한다.