현재 선택한 데이터 아키텍처 과정

DAP 이론 학습

이론 목록으로 돌아가기

물리 요소 조사와 설계 제약

물리 모델링은 논리 구조를 곧바로 DDL로 바꾸는 단계가 아니라 DBMS 제약, 데이터량·분포·증가율, 핵심 SQL, 동시성, 배치창, 보존·보안·가용성·배포 조건을 조사해 설계 가정과 수치 근거를 확정하는 단계입니다.

예상 읽기 6

핵심 요약

물리 설계의 입력은 평균 데이터 건수 하나가 아니다. 객체별 행 길이·건수·증가율·보존기간, 값의 분포와 편향, 읽기·쓰기 비율, 핵심 SQL 조건, 동시 사용자와 피크 처리량, 배치·인터페이스 창, DBMS 기능·제약, 운영 목표를 함께 수집한다. 조사 결과는 “대용량이다” 같은 표현이 아니라 측정값·출처·기준일·가정·변동 범위가 있는 설계 입력서로 남겨야 한다.

학습 목표

  • 물리 요소 조사의 범주와 산출물을 설명한다.
  • 평균값·피크값·분포·증가율을 구분해 물리 설계 입력으로 사용한다.
  • 논리 요구와 DBMS·운영·보안·배포 제약의 충돌을 식별한다.
  • 수치 근거와 가정을 기록하고 검증 기준으로 전환한다.

1. 조사 범주

1.1 기술 환경과 DBMS 제약

  • 대상 DBMS·버전·에디션과 지원 데이터 타입
  • 식별자 길이, 예약어, 객체 수, 키·인덱스 컬럼 제한
  • 문자 집합·정렬 규칙·시간대·정밀도
  • 제약조건·생성 컬럼·기간 기능 등 사용 가능한 구현 수단
  • 고가용성·복제·백업 구조에서의 제약

제품 기능은 버전과 에디션에 따라 달라질 수 있으므로 “DBMS가 지원한다”가 아니라 정확한 환경을 기록한다. 특정 제품 기능을 논리 모델의 보편 원칙으로 바꾸어 설명하지 않는다.

1.2 데이터 규모와 생명주기

조사값예시설계 영향
초기 건수주문 3억 건초기 적재·인덱스 생성 시간
일 증가량500만 건/일용량·유지보수 창
평균/최대 행 길이350B / 4KB페이지 효율·LOB 분리 검토
보존기간온라인 2년, 아카이브 5년저장 계층·삭제 방식
값 분포상태=완료 96%인덱스·통계·편향 검증
계절성월말 4배피크 용량·부하 테스트
삭제/정정 비율일 0.2%DML 비용·이력·공간 회수

평균 행 길이는 가변 길이·NULL·오버헤드에 따라 달라진다. 초기 계산은 추정치로 두되 샘플 데이터와 실제 적재 결과로 보정한다.

1.3 접근·갱신 패턴

핵심 프로세스와 SQL별로 다음을 수집한다.

  • 조건절·조인키·정렬·집계 컬럼
  • 반환 건수와 허용 응답시간
  • 호출 빈도와 동시 실행 수
  • 읽기/삽입/수정/삭제 비율
  • 단건 OLTP인지 대량 배치·분석인지
  • 특정 키·시간대에 요청이 집중되는지
  • 트랜잭션 범위와 잠금 충돌 가능성

화면 목록 하나만 기준으로 설계하면 배치 적재·대량 정정·외부 조회의 부하를 놓친다.

1.4 운영·보안·가용성 제약

  • 서비스 시간과 계획 정지 가능 시간
  • 배치 완료 시각, 인터페이스 주기와 지연 허용치
  • 백업·복구 목표와 장애 시 데이터 손실 허용치
  • 개인정보·민감정보의 저장·접근·마스킹 요구
  • 보존·파기·법적 동결 요구
  • 모니터링·증설·배포·롤백 절차

이 단원에서는 물리 모델에 영향을 주는 입력을 식별하는 데 집중하며 보안·백업·파티션의 상세 구현은 후속 범위로 넘긴다.

1.5 전환·배포 제약

신규 시스템이 아니라 기존 시스템 전환이라면 다음이 중요하다.

  • 원천 데이터 품질과 코드·키 변환
  • 초기 적재량과 허용 전환 시간
  • 변경분 동기화와 최종 컷오버 방식
  • DDL 적용 순서와 기존 애플리케이션 호환성
  • 대용량 테이블 변경의 잠금·로그·복제 영향

논리적으로 올바른 모델도 전환 창 안에 적재·검증할 수 없다면 구현 가능성이 낮다.

2. 물리 설계 입력서

항목기록 예품질 조건
기준일·출처2026-08-01 운영통계, 주문 로그최신성·재현 가능성
현재/예상 건수현재 3억, 3년 후 8.5억산정식과 성장 가정 명시
분포완료 96%, 취소 2%, 기타 2%평균뿐 아니라 편향 표시
핵심 SQL주문번호 단건, 고객+기간 목록조건·빈도·반환건수 포함
성능 목표단건 p95 200ms, 일배치 40분측정 지표와 부하 수준 포함
동시성피크 2,000 TPS, 동일고객 집중 5%경합 키와 트랜잭션 길이
보존·삭제온라인 24개월, 월별 파기법적 예외와 복구 기간
기술 제약DBMS 버전, 타입·키 제한제품 문서 근거와 대안
가정·불확실성성장률 ±20%, 신규채널 미반영검증 시점과 담당자

3. 조사와 설계 연결 흐름

CODE코드 영역 안에서 좌우로 이동할 수 있습니다.
업무·운영 목표 수집
  ↓
객체별 규모·분포·증가·보존 산정
  ↓
핵심 SQL·DML·동시성·배치 패턴 분석
  ↓
DBMS·인프라·보안·전환 제약 확인
  ↓
설계 가정 및 충돌 목록 작성
  ↓
데이터 타입·키·접근구조·저장구조 후보에 연결
  ↓
샘플 적재·부하·전환 테스트의 합격 기준 정의

설계안은 각 입력과 연결되어야 한다. 예를 들어 “주문 이력을 별도 테이블로 분리”했다면 보존기간, 현재/과거 조회 비율, 적재·삭제 방식이 근거가 되어야 한다.

4. 사례: 평균값만으로 설계한 실패

상황:

  • 일평균 주문 100만 건
  • 행사일 최대 800만 건
  • 주문의 70%가 20분 안에 집중
  • 상태값의 97%가 완료
  • 고객별 최근 30일 주문 조회가 피크에 초당 3,000회
  • 야간 정산 배치는 30분 안에 완료해야 함

잘못된 조사:

CODE코드 영역 안에서 좌우로 이동할 수 있습니다.
일 주문 100만 건, 주문번호 인덱스 필요

보완된 설계 입력:

  1. 행사일 800만 건과 20분 집중률로 삽입 피크를 산정한다.
  2. 상태='완료' 조건은 많은 행을 반환하므로 단일 상태 인덱스의 효과를 가정하지 않는다.
  3. 고객+주문일자 조건의 조회 빈도·반환건수·정렬을 핵심 SQL로 등록한다.
  4. 정산 배치의 읽기 범위와 온라인 DML 경합을 함께 부하 테스트한다.
  5. 행사 증가율·보존기간을 용량 산정과 운영 임계치에 반영한다.

5. 비교와 구분

구분부족한 입력충분한 입력
데이터량“대용량”현재·피크·증가율·보존·행 길이
성능“빠르게”p95/p99 응답, TPS, 반환건수, 부하 조건
분포값 종류 수만 확인빈도·편향·상관관계·시간 변화
운영백업 여부만 확인서비스창·배치창·복구목표·증설시간
보안개인정보라는 라벨저장·조회·마스킹·파기·감사 요구
DBMS제품명만 기록버전·에디션·설정·지원 한계
전환데이터 건수만 확인적재속도·정제·변경분·검증·롤백

시험 판단 포인트

  • 평균 데이터량만으로 피크 처리와 저장공간을 결정하지 않는다.
  • 선택도·카디널리티 판단에는 값 분포와 조건별 반환 건수가 필요하다.
  • 물리 설계 요소는 논리 요구뿐 아니라 DBMS·운영·보안·전환 제약의 영향을 받는다.
  • 조사값에는 기준일·출처·가정·변동 범위가 있어야 이후 검증과 변경이 가능하다.
  • 제품 기능 사용 여부는 버전·에디션과 운영 지원 가능성을 확인한 뒤 결정한다.

자주 틀리는 부분

  • 현재 건수만 조사하고 증가율·보존기간·대량 삭제를 빼먹는다.
  • SQL 건수만 세고 각 SQL의 조건·반환건수·호출빈도를 기록하지 않는다.
  • 균등 분포를 가정해 편향값·핫키 경합을 놓친다.
  • 개발 DB의 소량 테스트 결과를 운영 피크 성능으로 일반화한다.
  • 보안·백업·전환을 DBA 운영 문제로만 보고 물리 모델 입력에서 제외한다.
스스로 확인하기

개념 확인 문제

문제를 누르면 바로 아래에서 정답과 해설을 확인할 수 있습니다.

01객관식 다음 중 물리 요소 조사 자료로 가장 품질이 높은 것은? A. “주문 테이블은 매우 크다.” B. “주문은 약 1억 건이다.” C. “2026-08-01 기준 1억 건, 일 50만 건 증가, 행사일 최대 4배, 온라인 24개월 보존이며 산정 출처는 운영 로그다.” D. “DBMS가 알아서 최적화한다.”
정답 및 해설

현재 건수, 일·월 증가량, 피크일 증가량, 보존기간

02객관식 상태코드의 97%가 완료이고 대부분의 조회가 상태='완료' 전체를 요청한다. 우선 조사할 내용으로 가장 적절한 것은? A. 상태코드 컬럼명을 더 짧게 변경한다. B. 상태값별 실제 반환 건수·추가 조건·호출 빈도와 데이터 분포 변화를 조사한다. C. 상태코드 단일 인덱스를 무조건 만든다. D. 상태코드를 PK로 지정한다.
정답 및 해설

평균·최대 행 길이와 대용량 컬럼

03참·거짓 “DBMS 제품명만 확정되면 버전·에디션·설정 차이는 물리 모델 설계에 영향을 주지 않는다.”
정답 및 해설

핵심 조회의 조건·조인·정렬·반환건수·호출빈도

04기초 산정 현재 주문이 2억 건이고 향후 730일 동안 평균 하루 60만 건 증가한다. 보수적 상한 산정을 위해 이 기간의 삭제·아카이빙과 계절성은 무시할 때 예상 건수는 얼마인가?
정답 및 해설

목표 응답시간(p95/p99), 피크 TPS와 동시 사용자

05설계 입력 작성 다음 상황에서 추가 조사해야 할 항목을 다섯 가지 이상 제시하시오. “신규 주문 서비스는 응답이 빨라야 하며 주문 데이터는 많다. 야간에 정산도 수행한다.”
정답 및 해설

삽입·수정·취소 비율과 동일 주문·고객에 대한 경합