[OLTP, OLAP] 간단하게 한눈에 정리
OLTP (Online Transaction Processing)
: 온라인 트랙잭션 처리
핵심 목적
간단한 쿼리를 이용해 빠르게 데이터(INSERT, UPDATE, DELDTE)를 오류없이 처리
특징
1. DB를 편하게 관리(운영) 도와준다
2. 최신 데이터 유지
3. 데이터 무결성 (정확성) 보장
4. 1개의 요청작업을 처리한다
5. 적옵요청을 오류없이 처리하고, 실시간으로 확인
1개의 요청 작업이란?
1단계 : 구입 할 상품 직원한테 전달
2단계 : 직원이 상품을 확인하고 결제 진행
3딘계 : 결제 후 확인
1,2,3 단계를 완벽하게 처리하는 것이 1개의 요청 작업이다.
하지만
1,2 단계에서 작업이 진행되다 멈추게 된다면?
지금까지 진행한 1,2 단계를 무효화 시켜야한다 (이 과정을 롤백(Rollback))
12,3 단계를 정상적으로 진행 후 확정 (이 과정을 커밋(commit))
쇼핑몰 예시
INSERT : 새로운 옷 출고 → 목록에 옷 이름, 가격, 수량 추가
UPDATE : 기존 옷 추가 입고 → 옷 수량 변경
DELETE : 옷 완판 → 목록에서 옷 정보 삭제
OLAP (Online Analytical Processing)
:온라인 분석 처리
핵심목적
이미 저장된 데이터를 기반으로 데이터 분석 및 집계 (COUNT, SUM)
특징
1. 데이터 분석 및 집계 이용
2. 사용자의 의사결정에 도움을 준다
3. OLTP보다 쿼리가 복잡하다
4. 데이터 양이 많으면 처리시간이 오래걸린
5. 데이터에서 나온 데이터를 분석, 통계
데이터에서 나온 데이터란?
1년동안 일을 했을 때 모은 돈, 지출 를 표로 정리하고 싶다
1. 먼저 1년의 기록이 담긴 통장거래내역 확보,
2. 통장거래내역을 바탕으로 수입과 지출액 항목별로 나눈 후 계산
3. 이 과정을 손으로 하기보다 컴퓨터로 자료를 추출 분석 및 제공 한다.
쇼핑몰 예시
COUNT : 전체 옷 수량 파악 → 전체 옷 수량 집계
SUM : 오늘 판매 수익 파악 → 오늘 판매 된 가격 집계
구분 | OLTP | OLAP |
목적 | 비즈니스 활동 지원 | 비즈니스 활동에 대한 평가, 분석 |
주 트랙잭션 형태 | SELECT, INSERT, UPDATE, DELETE | SELECT |
속도 | 수초 이내 | 수초 이내 수분 이내 |
데이터 표현 시간 | 실시간 | 과거 |
관리단위 | 테이블 | 분석된 정보 |
최적화 방법 | 트랜잭션 효율화, 무결성의 극대화 | 조회 속도, 정보의 가치, 편의성 |
데이터의 특성 | 트랜잭션 중심 | 정보 중심 |
예시 | 회원정보 수정 | 1년가의 주요 인기 트랜드 |
상품주문 | 한달간의 목별 수입, 지출 | |
댓글 남기긱 및 수정 | 10년간 A회사의 직급별 임금 상승률 |
데이터 웨어하우스 (Date Warehouse)에서
OLTP에서 데이터 소스를 제공하고
OLAP는 그 데이터소스를 분석한다.
참고
https://chankim.tistory.com/6 OLTP/OLAP
https://too612.tistory.com/511 OLTP/OLAP