본문 바로가기

빅데이터

[DB] OLTP와 OLAP의 차이점

 

OLTP (Online Transaction Processing)

<정의>

동시에 발생하는 다수의 트랜잭션을 실행하는 데이터 처리 시스템.

이 때의 트랜잭션을 경제 또는 재무 트랜잭션이라 말하며, 기업이 회계 또는 보고를 위해 언제든 정보에 access 가능하도록 기록 및 보호된다.

OLTP는 일반적으로 데이터 스토어 내의 소규모 데이터 삽입, 업데이트 및 삭제를 통해 해당 트랜잭션을 수집, 관리 및 보호하는 작업을 포함하며, 웹, 모바일, 기업 애플리케이션은 고객, 공급업체 또는 파트너와의 모든 상호 작용, 거래를 추적한 뒤 이를 데이터베이스에 업데이트한다. 

 

<특징>

데이터베이스에 정보를 빠르고 안정적으로 저장할 수 있다.

데이터베이스에서 복잡한 쿼리를 수행하기가 어렵다.

 

 

OLAP (Online Analytical Processing)

<정의>

대규모 비즈니스 데이터베이스를 구성하고 복잡한 분석을 지원하는 데이터 처리 시스템.

OLAP는 방대한 양의 데이터에 대해 집계 계산을 적용하고, 분석 및 BI 등 과도한 읽기 시나리오에 대해 최적화되어 있다.

다차원 데이터를 2차원으로 볼 수 있도록 분할하거나 데이터 특정 값을 기준으로 필터링할 수 있도록 지원하며 이 때 데이터가 여러 데이터 원본 간에 분할 여부와 관계없이 수행될 수 있다. 이 것은 사용자들이 데이터 분석의 세부 정보를 모를 경우에도 추세, 패턴, 데이터 탐색을 가능하게 한다.

 

<특징>

트랜잭션 시스템에 부정적인 영향을 주지 않고, 복잡한 분석 쿼리를 수행할 수 있다.

data update 속도가 늦어서 변경에 대한 즉각적 대응보다 전략적 비즈니스 의사 결정에 더 적합하다. 

 

 

[ OLTP vs OLAP ]

다수의 트랜잭션을 실시간으로 실행 분석 목적으로 다수의 트랜잭션을 질의
빠른 응답시간 느린 응답시간
빈번한 수정, 읽기 및 쓰기 작업이 균형적 수정 없음, 읽기 집약적
인덱스화 된 데이터 사용 컬럼 형식의 데이터 저장
빈번한 백업, 동시 백업 적은 빈도의 백업
소규모 스토리지 공간 대규모 스토리지 공간
단순한 쿼리 복잡한 쿼리