ADsP NOTE검색

데이터 이해 / 5분 읽기

데이터베이스, DW, 데이터 마트는 무엇이 다를까

데이터베이스는 저장과 조회의 기반이고, DW는 여러 출처를 공통 기준으로 통합한 분석용 시스템, 데이터 마트는 특정 주제나 부서에 범위를 맞춘 저장소입니다. OLTP와 OLAP는 용량이나 조회 여부보다 개별 거래와 분석이라는 처리 목적을 구분합니다.

데이터베이스, DW, 마트는 서로 배타적인 기술이 아닙니다

데이터베이스는 자료를 구조와 규칙에 따라 저장하고 조회하는 기반입니다. DW(Data Warehouse)는 여러 출처의 자료를 통합해 분석하도록 구성한 시스템이고, 데이터 마트는 특정 부서나 주제의 분석에 범위를 맞춘 저장소입니다. DW와 마트도 데이터베이스를 이용해 구현할 수 있습니다.

파일이 작으면 마트, 크면 DW라는 경계는 없습니다. 어떤 사용자가 어떤 질문에 답하려는지와 자료의 통합 범위를 봅니다. 다음 문화센터 사례와 수치는 학습용 가정입니다.

예약 한 건의 변경과 월별 비교는 다른 처리입니다

예약 등록, 변경, 취소처럼 업무에서 생기는 거래를 처리하는 방식은 OLTP(Online Transaction Processing)입니다. 거래는 금전 거래에 한정되지 않습니다. 좌석 예약과 상태 변경도 포함됩니다.

OLAP(Online Analytical Processing)는 지점, 월, 강좌별로 기록을 묶고 비교하는 분석 처리입니다. IBM의 OLAP 설명도 두 처리를 목적에 따라 구분합니다.

질문처리 목적구분할 근거
이 좌석을 지금 예약할 수 있는가?OLTP현재 거래의 정확성과 동시 요청 처리
수강생의 예약 시간이 언제인가?OLTP 업무의 조회개별 거래의 현재 상태 확인
두 달 동안 지점별 예약이 어떻게 달라졌는가?OLAP여러 기록의 집계와 비교

OLTP에도 조회가 있으므로 읽기는 OLAP, 쓰기는 OLTP로 나누면 틀립니다. 실제 제품 하나가 두 목적을 함께 지원할 수도 있습니다. 약어에서 공통인 OL과 P를 빼면 T는 Transaction, A는 Analytical입니다. 예약 한 건의 처리와 월별 흐름의 분석을 연결하면 구분하기 쉽습니다.

DW는 무엇을 통합하고 남길까요

A지점의 C01과 B지점의 기초반이 같은 강좌라면 이름을 한 열에 합치는 것만으로 비교할 수 없습니다. 강좌 코드뿐 아니라 취소 포함 여부, 날짜 기준과 한 행의 단위를 맞춰야 합니다. Oracle의 DW 안내가 설명하는 네 특성은 이 과정을 이해하는 기준입니다.

특성예약 분석에 적용하면
주제 지향성원래 화면 순서보다 예약, 수강, 출석 같은 분석 주제로 구성
통합성출처별 코드, 단위와 지표 정의를 맞춤
시계열성어느 시점의 자료인지 남겨 변화와 과거 보고서를 확인
비휘발성일상적인 거래 변경보다 축적한 자료를 안정적으로 분석

비휘발성은 오류를 고칠 수 없다는 뜻이 아닙니다. 잘못 적재한 자료의 정정과 보존 정책에 따른 처리는 따로 관리합니다. 모든 DW의 물리 구조나 갱신 간격이 같은 것도 아닙니다.

DW가 전날 기록까지만 반영한다면 오늘 취소한 예약이 아직 남아 있을 수 있습니다. 현재 좌석 배정과 지난달 추세 분석이 허용할 지연은 다릅니다. 보고서에 자료 기준 시점과 갱신 시점을 함께 적는 이유입니다.

마트는 특정 업무에 맞추지만 기준은 공유합니다

공통 DW에서 편성팀이 필요한 월별 예약과 취소 자료만 가져오면 종속형 마트의 예입니다. 원천 시스템에서 직접 가져오는 독립형, DW와 다른 출처를 함께 쓰는 혼합형도 있습니다. IBM 데이터 마트 안내처럼 마트가 모두 DW를 거치는 것은 아닙니다.

마트에는 목적에 따라 상세 기록과 요약값을 함께 둘 수 있습니다. 팀이 필요한 자료를 찾기 쉬워지는 대신, 각 팀이 유효 예약을 다르게 정의하면 보고서가 어긋납니다. 저장 범위를 좁히는 일과 지표 기준을 제각각 정하는 일은 다릅니다.

같은 덧셈도 정의가 섞이면 잘못된 합계가 됩니다

유효 예약을 해당 월 접수에서 같은 접수분의 취소를 뺀 값으로 정하고, 두 지점의 취소 마감 시점도 같다고 합시다.

접수 월지점접수취소유효 예약
10월A80872
10월B60654
11월A1001090
11월B70763

10월은 72+54 = 126건, 11월은 90+63 = 153건으로 27건 증가했습니다. A지점은 접수 100, B지점은 유효 예약 63을 쓰면 합계가 163이 됩니다. 덧셈은 맞아도 서로 다른 지표를 더한 결과입니다.

자료를 합치기 전에 열과 집계 대상의 정의를 맞추고, 중복과 상태 불일치는 데이터 품질 기준으로 확인해야 합니다. 분석용 저장소의 가치는 자료를 많이 담는 것뿐 아니라 같은 의미로 비교할 수 있게 만드는 데 있습니다.

핵심 정리와 실수 점검

핵심 정리

  • 데이터베이스는 넓은 기반 개념이며 DW와 마트는 분석 목적과 범위에 따라 이해합니다.
  • OLTP는 거래 처리, OLAP는 분석 처리이며 단순히 읽기와 쓰기로 나누지 않습니다.
  • DW 통합에서는 코드, 지표 정의, 집계 단위와 기준 시점을 함께 맞춥니다.

놓치기 쉬운 지점

  • 데이터 마트에 일률적인 용량 상한이 있다고 외우는 실수
  • DW의 비휘발성을 오류 정정과 이력 관리도 금지하는 성질로 해석하는 실수
  • 조회 작업이면 모두 OLAP라고 판단하는 실수

확인할 내용

  • 작업이 개별 거래인지 여러 기록의 분석인지 설명한다.
  • DW와 마트가 다루는 주제와 사용자 범위를 적는다.
  • 집계 전 지표 정의와 자료 마감 시점을 확인한다.

이해한 내용 확인하기

직접 작성한 학습용 문항입니다. 공식 기출문제가 아닙니다.

Q1. 공연 좌석 한 자리를 예약하고 중복 예약을 막는 처리와, 지난 1년 공연별 점유율을 비교하는 처리는 각각 무엇인가요?

생각한 뒤 해설 보기

앞은 OLTP, 뒤는 OLAP의 전형적인 예입니다. T는 Transaction으로 거래를 처리하고 A는 Analytical로 여러 기록을 분석합니다.

Q2. 자료를 조회만 하는 요청이면 OLAP라고 판단해도 되나요?

생각한 뒤 해설 보기

아닙니다. 현재 예약 한 건을 조회하는 일도 OLTP 업무의 일부입니다. 조회 여부보다 처리 목적과 범위를 봅니다.

Q3. 여러 지점의 강좌 코드와 취소 기준을 통일했습니다. DW의 어떤 특성에 직접 연결되나요?

생각한 뒤 해설 보기

통합성입니다. 서로 다른 출처의 표현과 의미를 맞춰 일관되게 비교할 수 있도록 했습니다.

Q4. 전사 DW 없이 예약 시스템에서 편성팀용 자료를 직접 가져오는 마트는 어떤 유형인가요?

생각한 뒤 해설 보기

독립형 데이터 마트의 예입니다. 데이터 마트가 반드시 DW에서만 자료를 가져오는 것은 아닙니다.

Q5. 표에서 11월 전체 유효 예약과 10월 대비 증가 건수는 얼마인가요?

생각한 뒤 해설 보기

11월은 90+63=153건입니다. 10월은 72+54=126건이므로 27건 늘었습니다. 모든 행에 같은 취소 기준과 마감 시점을 적용한 계산입니다.

객관식 유형 연습 →

더 궁금한 점

분석을 하려면 항상 별도 DW부터 만들어야 하나요?

아닙니다. 자료 규모, 출처 수, 서비스 부하, 이력 보존과 운영 조건에 따라 기존 저장소로도 목적을 달성할 수 있습니다. 이 글은 기능의 구분이며 특정 구축 순서를 의무로 정하지 않습니다.

마트에는 요약한 합계만 저장하나요?

목적에 따라 상세 기록과 요약값을 함께 둘 수 있습니다. 마트의 구분 기준은 합계만 있는지가 아니라 특정 주제나 업무에 맞춘 범위입니다.

참고 자료와 확인 범위
  • Oracle 데이터 웨어하우스 안내 ↗

    분석 목적과 주제 지향성, 통합성, 시계열성, 비휘발성의 일반 정의를 확인했습니다. 문화센터와 집계 수치는 자체 제작입니다.

  • IBM OLAP와 OLTP 비교 ↗

    두 약어의 전체 명칭과 거래 처리, 분석 처리의 목적 차이를 확인했습니다. T와 A를 연결하는 설명은 학습용 구분법입니다.

  • IBM 데이터 마트 안내 ↗

    주제 범위와 종속형, 독립형, 혼합형 구분을 확인했습니다. 문서의 용량 예시는 보편적인 정의로 사용하지 않았습니다.

함께 다듬는 노트

이해되지 않는 설명이 있었나요?

틀린 계산, 어려운 표현, 다음에 읽고 싶은 주제를 알려주세요.

의견 보내기