OLAP & OLTP

기술노트
Admin (토론 | 기여)님의 2025년 9월 6일 (토) 05:08 판 (Gemini 벌크 업로더로 자동 업로드)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

📊 OLAP & OLTP

OLTPOLAP은 데이터베이스 시스템을 사용하는 목적에 따라 구분되는 두 가지 주요 처리 방식입니다. OLTP는 실시간 거래 처리에, OLAP은 복잡한 데이터 분석에 중점을 둡니다.


transactional OLTP (Online Transaction Processing)

OLTP는 '온라인 거래 처리'라는 뜻으로, 여러 사용자가 동시에 데이터베이스의 데이터를 실시간으로 수정하고 조회하는 작업을 처리하는 시스템입니다. 우리가 일상적으로 사용하는 대부분의 애플리케이션(은행, 예약, 쇼핑몰 등)은 OLTP 시스템입니다.

  • 목적 : 데이터의 빠른 입력, 수정, 삭제, 조회 (실시간 거래 처리)
  • 특징 :

> * 짧고 간단한 트랜잭션이 매우 빈번하게 발생합니다. > * 데이터의 최신성과 정확성(무결성)이 매우 중요합니다. > * 빠른 응답 시간을 보장해야 합니다.

  • 설계 : 데이터의 중복을 최소화하는 정규화된 데이터 모델을 사용합니다.

🔬 OLAP (Online Analytical Processing)

OLAP은 '온라인 분석 처리'라는 뜻으로, 대규모 데이터 웨어하우스에 저장된 데이터를 다양한 관점에서 복잡하고 깊이 있게 분석하여, 비즈니스 의사결정에 필요한 인사이트를 얻기 위한 시스템입니다.

  • 목적 : 대용량 데이터의 다차원 분석 및 리포팅 (의사결정 지원)
  • 특징 :

> * 소수의 사용자가 복잡하고 무거운 분석 쿼리를 실행합니다. > * 데이터는 주기적으로 업데이트되며, 실시간성보다는 분석의 용이성이 더 중요합니다. > * 응답 시간이 상대적으로 길어도 괜찮습니다.

  • 설계 : 분석에 용이하도록, 데이터를 비정규화된 스타 스키마(Star Schema)나 스노우플레이크 스키마(Snowflake Schema) 형태로 구성합니다.

💡 기술사 핵심 Point

  • OLTP는 데이터베이스를 운영하는 데, OLAP은 데이터베이스를 분석하는 데 사용됩니다.
  • OLAP의 핵심 연산으로는 특정 차원을 중심으로 데이터를 잘라보는 슬라이스(Slice)다이스(Dice), 차원을 오르내리며 데이터를 요약하거나 상세화하는 드릴 업/다운(Drill-up/down) 등이 있습니다.
  • OLAP 시스템은 보통 데이터 웨어하우스(DW) 위에 구축되며, 사용자가 데이터를 쉽게 탐색할 수 있도록 큐브(Cube)라는 다차원 데이터 구조를 사용합니다.
  • 운영 시스템(OLTP)의 성능에 영향을 주지 않기 위해, 분석 시스템(OLAP)은 별도의 서버와 데이터베이스로 분리하여 구축하는 것이 일반적입니다.