Online Transaction Processing vs Online Analytical processing
OLTP
: 트랜잭션 처리
- 트랜잭션이란 한 동작내에 처리되야하는 데이터베이스의 변경들을 말한다.
- 행 기반의 프로세스를 수행, 행의 Insert, Delete, Update가 빠르게 처리되는것이 중요하다.
- 원래는 OLTP밖에 없었다.
- 컬럼 기반의 Filter가 느릴 수 있다.
- 주문 처리나 결제와 같은 일상적인 트랜잭션을 처리하는 데 사용
- 빠른 쿼리, 데이터 무결성을 중시
- 실시간 운영에 적합
- 속도를 위해 비정규화된 모델을 사용
- 호텔 예약, 은행 거래, 메신저 등
- Multi user, Indexed dataset
-> 쿼리가 다수의 사용자에 의해 동시다발로 이뤄질 것이다.
OLAP
: 데이터 분석
- 컬럼기반 프로세스를 수행한다.
- 데이터 웨어하우스, 스토리지로 부터 복잡한 데이터 분석을 위해 사용
- 대규모 데이터셋에서 복잡한 쿼리를 실행, 보고서 생성과 트렌드 파악에 적합
- 중복을 줄이기 위해 정규화된 데이터 모델 사용
- OLAP CUBE
- 데이터 마이닝, 비즈니스 의사결정 분석 등
-> 쿼리는 정해진 배치 스케줄 기반 순차적으로 일어날 것.(통제된)