[DE] Batch 작업, OLTP, OLAP

가람·2021년 9월 8일
0

빅 데이터 처리는 실시간으로 할 수도 있고, 특정시간에 일괄적으로 처리할 수도 있습니다.

은행의 경우 위 그림과 같이 운영 시간이 정해져 있습니다. 거래빈도가 낮은 시간대에 한 번에 몰아서 데이터 처리 작업(정산)을 수행합니다. 이렇게 한번에 모아서 처리하는 것을 Batch 작업이라고 합니다. 반면 뱅킹앱을 이용하여 송금을 하면 실시간으로 상대방의 계좌로 금액이 송금됩니다. 데이터를 실시간으로 Transaction 처리나 분석을 하는 작업은 OLTP, OLAP 이라고 합니다.

Batch 작업

Batch processing (일괄 처리)는 데이터를 모아서 일괄적으로 처리합니다. 일반적으로 특정 시간에 실행됩니다. Batch를 사용하는 이유는 여러 이유가 있겠지만, 주로 시스템의 과부하를 줄이기 위해서 입니다. DB작업이나 이미지 처리 같은 작업들을 한번에 모아서 처리합니다.

Batch processing을 사용하면 다음과 같은 장점이 있습니다.

  • 작업 프로세스의 시간대를 컴퓨터 리소스가 덜 사용되는 시간대로 변경할 수 있습니다.
  • 따라서, 전반적인 이용률을 높여 컴퓨터 사용효율을 높일 수 있습니다.

OLTP

OLTP ( OnLine Transaction Processing, 온라인 트랜잭션 처리 )는 실시간으로 트랜잭션을 처리하는 것입니다. 좀 더 자세하게 말하면 복수의 사용자 PC에서 발생되는 Transaction을 DB서버가 처리하고, 그 결과를 실시간으로 요청한 사용자 PC에 되돌려주는 과정을 뜻합니다.

예를들면, 은행앱을 통해 A계좌에서 B계좌로 100만원 이체를한다고 했을때, 실시간으로 A계좌에서는 100만원이 감액되고 B계좌에서는 100만원이 증액이 되도록 처리가 되는것입니다.

OLAP

OLAP ( OnLine Analytical Processing, 온라인 분석 처리 )는 DW에 저장된 데이터를 분석하여 사용자에게 유의미한 정보를 제공해주는 처리방법을 의미합니다. OLTP가 데이터 자체의 처리에 중점이 된 용어라면, OLAP은 이미 저장된 데이터를 기반하여 분석하는데 중점이 된 용어입니다.

예를들면, 온라인 게임 전적사이트인 OP.GG 에서는 특정 패치 기간동안 일어난 게임들을 분석하여 실시간 챔피언 티어를 제공하고 있습니다. OLAP는 사용자에게 어떻게 정보를 제공할지, 어떻게 사용자가 원하는 정보를 표현할지가 좀 더 중요합니다.

OLTP vs OLAP

OLTP는 데이터를 처리함에 중점을 두고 오류가 없는 무결성이 중요합니다.
OLAP는 저장된 데이터를 분석하여 사용자에게 필요한 정보를 제공하는것이 중요합니다.

구분OLTPOLAP
목적데이터 처리데이터 평가, 분석
주 트랜잭션 형태SELECT, INSERT, UPDATE, DELETESELECT
속도수 초 이내수 초,분 이내
최적화 방법Transaction 최적화, 무결성 극대화조회 속도 증가, 정보의 가치 증가, 편의성 증가

참고 사이트
https://too612.tistory.com/511
https://jins-dev.tistory.com/entry/%EA%B0%84%EB%9E%B5%ED%95%98%EA%B2%8C-%EC%A0%95%EB%A6%AC%ED%95%B4%EB%B3%B4%EB%8A%94-OLTP-OLAP-%EC%9D%98-%EA%B0%9C%EB%85%90
https://ko.wikipedia.org/wiki/%EC%98%A8%EB%9D%BC%EC%9D%B8_%ED%8A%B8%EB%9E%9C%EC%9E%AD%EC%85%98_%EC%B2%98%EB%A6%AC
http://labs.brandi.co.kr/2018/02/28/hansj.html

profile
hello world :)

0개의 댓글