OLTP(Online Transaction Processing)

  • 운영에서 데이터 및 데이터를 처리하는 방법을 의미한다.
  • 복수의 사용자에게서 발생하는 transaction을 DB 서버가 처리, 그 결과를 요청한 사용자에게 돌려주는 과정
  • 1개 트랜잭션의 원자성, 무결성을 보장하여 처리하고 결과를 가져올 수 있게 하는 과정

특징

  • RDB 기준으로 생각됐으나 NoSQL도 운영계 데이터 성격을 띤다면 OLTP로 분류 가능
  • 데이터 처리가 얼마나 정확하고 무결한지가 중요
  • 실질적인 데이터의 저장, 삭제, 수정 등의 작업을 의미
  • 비교적 작은 규모의 트랜잭션들로 구성
  • CRUD 같은 쿼리가 주를 이룸
  • 전통 DBMS에서 사용됨
  • 데이터 간 구조를 잘 정리하려고 노력

OLAP( Online Analytical Processing )

  • 분석계 데이터 및 데이터를 처리하는 방법
  • DW, DB에 저장되어 있는 데이터를 분석하여 사용자에게 유의미한 정보를 제공하는 처리 방법
  • 기존에 저장되어 있는 데이터를 사용자 요구와 목적에 맞게 분석하여 정보를 제공하는 개념

특징

  • 분석을 통해 BI(Business Intelligence)와 연계하여 특정 지표 추출, 리포트 생산, 의사 결정에 도움
  • 이미 저장된 데이터를 바탕으로 어떤 정보를 제공하는지가 중요
  • 데이터가 무결, 정확하다는 전재 하에 정보를 어떤 식으로 표현하고 제공하는지를 의미
  • 대용량 데이터를 취급
  • 통계/집계 등의 복잡한 쿼리들이 주를 이룸
  • DW를 구축
  • 데이터가 어느 정도 중복되더라도 별 상관이 없으며 많은 데이터 수집 필요

유사점

대용량의 데이터를 저장하고 처리하기 위한 데이터베이스 관리 시스템이다. 원활하기 운영하려면 안정적인 인프라가 필요하다. 둘 다 기존 데이터를 쿼리하거나 새 데이터를 저장하는 데 사용할 수 있다. 조직의 데이터 기반 의사 결정을 지원한다.

차이점

  • OLAP는 집계된 데이터를 분석하는 것이고 OLTP는 데이터베이스 트랜잭션 처리하는 것이다.
  • OLAP는 보고서를 생성하고, 복잡한 데이터 분석을 수행하며, 추세를 식별하는데 사용된다. OLTP는 주문을 처리하고 재고를 업데이트하며, 고객 계정을 관리하는 데 사용된다.

데이터 형식 지정

OLAP에는 다차원 데이터 모델이 사용되므로 동일한 데이터를 다양한 각도에서 볼 수 있다. OLTP는 일차원적이고 한 가지 데이터 측면에 중점을 둔다. RDB를 사용해서 데이터를 테이블로 구성한다.

데이터 아키텍처

OLAP는 쓰기보다는 읽기에 우선 순위를 둔다. 대용량 데이터를 기반으로 복잡한 쿼리를 빠르고 효율적으로 수행할 수 있다. 반면 OLTP는 데이터 쓰기에 우선 순위를 둔다. 쓰기 작업이 많은 워크로드에 최적화되어 있으며, 데이터 무결성을 손상시키지 않으면 대용량 트랜잭션 데이터를 잦은 빈도로 업데이트할 수 있다.

구분 OLTP OLAP
목적 비즈니스 활동 지원
OLTP는 실시간 트랜잭션을 관리하고 처리하는 데 도움이 됩니다.
비즈니스 활동에 대한 평가, 분석
OLAP는 대량의 데이터를 분석하여 의사 결정을 지원하는 데 도움이 됩니다.
주 트랜잭션 형태 INSERT, UPDATE, DELETE, SELECT SELECT
속도 수 초 이내 수 초 이상 수 분 이내
데이터 표현 시간 실시간 과거
관리 단위 테이블 분석된 정보
최적화 방법 트랜잭션 효율화, 무결성 극대화 조회 속도, 정보의 가치, 편의성
데이터의 특성 트랜잭션 중심 정보 중심
중요점 데이터 정확도, 무결성 결과의 속도, 표현 방식
활용자 운영자 분석가, 의사결정자
예시 회원정보 수정 1년 간의 주요 인기 트렌드
데이터 소스 OLTP는 단일 소스의 실시간 및 트랜잭션 데이터를 사용합니다. OLAP는 여러 소스의 기록 및 집계 데이터를 사용합니다.
데이터 구조 OLTP는 관계형 데이터베이스를 사용합니다. OLAP는 다차원(큐브) 또는 관계형 데이터베이스를 사용합니다.
데이터 모델 OLTP는 정규화되거나 비정규화된 모델을 사용합니다. OLAP는 별 스키마, 눈송이 스키마 또는 기타 분석 모델을 사용합니다.
데이터 볼륨 OLTP는 스토리지 요구 사항이 비교적 작습니다. 기가바이트(GB) 규모라고 생각하면 됩니다. OLAP에는 대용량 스토리지가 필요합니다. 테라바이트(TB)와 페타바이트(PB) 규모라고 생각할 수 있습니다.
응답 시간 OLTP는 응답 시간이 짧으며 일반적으로 밀리초 단위입니다. OLAP의 응답 시간은 일반적으로 초 또는 분 단위로 더 깁니다.
예제 애플리케이션 OLTP는 결제 처리, 고객 데이터 관리 및 주문 처리에 적합합니다. OLAP는 추세를 분석하고, 고객 행동을 예측하며, 수익성을 식별하는 데 유용합니다.

참고 문헌 참고 문헌