*업무를 하면서 OLAP DB는 똑같은 DB인데 왜 다른데에서 다른 DB엔진을 가지고 사용하는지 궁금했다.
업무를 하면서 나 나름대로 느낀 생각 및 정보들이다. 완벽한건 아니지만 어디까지나 흐름은 파악할 수 있을것 같다.
OLAP을 하기 위해서는
현재 서비스하고 있는 DB를 사용하지 않는다.
현재 서비스 하고 있는 데이터를 다른 DB로 옮기는 작업을 한다.
이것을 'ETL'이라고 한다.
'ETL'을 그렇다면 왜 하는 것일까?
'ETL'을 하는 이유는 데이터를 옮기기 위해
그렇다면 왜 다른 DB를 쓸까?
돈도 아끼고 그냥 있는 DB를 사용하면 되는데...
DB를 사용하기 위해서 우리는 '쿼리'라는 DB언어로 DATA를 조회/삭제/삽입/수정 과 같은 작업을 한다.
(물론 OLAP을 하기 위해서는 조회만 하겠지만...)
그런데 이런 조회를 할때, 많은 양의 데이터를 조회하거나
복잡한 조건의 데이터를 조회할 때가 있다.
이럴때, 이 쿼리에 맞는 데이터를 조회하기 위해 사용되는 메모리가 DB에 많은 부담을 준다.
많은 메모리를 사용하다보면 DB장비는 견디지 못하고 뻗을 수가 있다. 혹은 데이터를 조회하는데 다른 DB에도 상당한
영향을 주게 될 수도 있다.
만약 심각한 상태가 되는 경우에는 DB가 뻗는 경우인데,
홈페이지에 사람들이 몰리면 홈페이지가 뻗듯이 DB도 뻗을 수 있다.
DB가 뻗게 되면 DATA의 손실이 오거나, 사람들이 DB를 사용할 수 없게 된다.
만약, 우리가 서비스를 하고 있는 동일한 DB를 뻗게 된다면
DATA를 보기위해 서비스가 먹통이 될 수도 있다.
이러한 이유 때문에 분석용 DB를 따로 사용하게 되는 것이다.
'일상 기술노트 > BI,ETL,OLAP' 카테고리의 다른 글
OLAP 이란? BI란? 회사경험하고 정리... (0) | 2020.05.22 |
---|---|
Ad hoc (정보 추가,정리 필요) (0) | 2019.12.19 |
데이터아키텍처-자동화란? (0) | 2019.12.19 |
데이터 파이프라인 (0) | 2019.12.18 |
2019년을 돌아보면서 (BI가 뭐죠 ?) (0) | 2019.12.14 |