쓰여야 할 모든 이야기들은 이미 다 쓰였다. 하지만 아무도 귀 기울이지 않았기에 그 모든 것이 다시 쓰여야 한다.
- 앙드레 지드
의문이 아니라 질문해라!
위대한 사람을 직접 찾아가라!
내 안에 잠든 거인을 깨워라!
질릴 만큼 꾸준히 하라, 이게 작품을 만드는 길이다.
데이터 창고
데이터 웨어하우스(DataWarehouse, DW)가 필요한 이유는 데이터베이스(DB)는 분석하기에 너무 작은 단위이기 때문입니다.
데이터베이스, 즉 데이터의 토대(Base)는 정보 시스템의 말 그대로 토대일 뿐입니다. 해당 정보시스템이 운영을 위해서만 DB서버는 사용되어야 합니다. 예를 들어, 편의점의 정보시스템을 생각해봅시다. 어떤 정보시스템이 있을까요?
1. 판매대 POS 시스템
: 판매 상품을 입력받고, 그만큼 재고 수량을 빼고, 매출을 기록한다.
- 신용카드를 받는 경우가 많으니, 카드사(VAN사 등)와 인터페이스(정보 교환)를 할 수 있어야 한다.
2. 재고 관리 시스템
: 새벽마다 주문했던 상품들이 트럭을 타고 도착한다. 들어온 만큼 재고 수량을 더하고, POS 시스템과 연동되어서 재고를 관리한다.
- 재고가 부족하면 자동으로 주문하게 하기 위해선 주문 시스템과 인터페이스가 되어야 한다.
3. 주문 시스템
: 본사에게 부족한 재고의 상품을 주문하는 시스템이다.
편의점의 정보시스템들
위의 세 시스템은 각자 맡은 역할이 있습니다. 그리고 각각의 토대(DB) 위에 구축이 되어있습니다. 그런데 점차 판매량이 많아져 점주님은 고민이 생깁니다. 인기 많은 상품은 금방 떨어져서 저녁이 되면 해당 상품을 구매하지 못하고 나가는 손님들이 많아진 겁니다.
그렇다고 그 인기 많은 상품이 몇 달 동안 똑같은 것도 아닙니다. 매 달, 아니 거의 매주 바뀝니다. POS 기기로 어떤 상품이 얼마나 판매되었는지 보려고 하면, 자꾸 손님이 들어와서 자세히 보기가 힘듭니다. 재고 관리 시스템에서 높은 판매량을 지닌 상품을 정렬해서 보려니까 화면(UI)이 너무 보기가 힘듭니다. 주문 시스템 역시 주문량만 입력받을 뿐, 상품별로 주문을 얼마 했는지 같은 분석을 하지는 못 합니다.
데이터 웨어하우스의 목적
자, 여기서 DW를 구축한다면 그 목적은 무엇이 될까요?
DW 추진 방안
편의점 시장이 지속적으로 성장하면서 판매량의 증대에 따른 데이터가 증가하고 있습니다.
우리는 DW를 구축하여 고객들이 요구하는 높은 품질 수준을 충족할 것입니다.
DW는 빅데이터 기반의 통합 점포 관리를 통해 체계적인 상품 분석을 가능하게 해 줍니다.
그리고 전 점포의 동일한 지표 관리를 쉽게 해 줍니다.
추진배경
데이터 기반의 의사결정 체계 확보
지속적으로 증가하는 데이터의 효율적 관리 필요성
사용자 요구사항의 고도화
추진목표
표준지표/리포트 제공
통합 분석을 위한 데이터 체계 구축
사용자 중심 분석 체계 구축
자, 분석을 위해서 시스템이 필요한 것은 알겠습니다.
그런데 조회(Select) 쿼리를 계속 날리는 시스템은 기존 정보시스템(운영 시스템, 기간계 시스템)에 부하를 많이 줄 겁니다. 핸드폰으로 검색할 때, 짧은 시간에 검색을 계속하거나 새로고침을 자주 하면 버벅거리는 것을 생각하시면 됩니다.
그렇다면 운영 DB에 있는 데이터를 DB서버가 무리하지 않을 때(안 바쁠 때, 새벽 2시쯤?) 뽑아다가 따로 모아두면 되지 않을까요? 이거는 분석만을 위한 DB로 쓰는 것이죠. 이러한 DB는 대용량 data를 처리하기 위한 오라클 EXA DB처럼 큰 그릇에 다 모아놓고 DB들은 운영에만 집중할 수 있게 해 줍니다.
모아두는 방법론의 차이가 있을 수는 있습니다.
- 데이터의 정합성 - 데이터를 어디까지 변형해야 하나?
- 쓸데없는 데이터도 모아두는 것이 옳은가? - 필요한 것만 뽑아다 놓자
DW의 아키텍처 예시
데이터웨어하우스 기본 콘셉트
일단 데이터를 원산지에서 조달해왔습니다. 그런데 마구잡이로 트럭에다 실어오면 모아둔 의미가 사라집니다. 창고가 어질러져 있다면 여기서 필요한 물건을 찾는 건, 모아두지 않았을 때보다 힘들기 때문입니다. 어떻게 예쁘게 데이터를 쌓을 것인가 가 DW의 설계의 목적입니다. 이러한 설계는 사실 노하우가 없으면 하기가 힘듭니다. 그래서 미리 많이 쌓아본 이삿짐센터가 설계해둔 게 있습니다. 이를 BI(Business Intellingence) 프로그램이라고 합니다. 문제를 해결해주었다고 해서 이러한 프로그램을 솔루션이라고 부릅니다. 그리고 이삿짐센터와 같은 업체를 솔루션 업체라고 합니다. 다음번에는 이 BI에 대해서 알아보겠습니다.
참고도서:
1. 데이터 웨어하우스 멘토(The Data Warehouse Mentor):실용적 DW BI 시스템 구축을 위한 통찰
2. 랄프 킴벌의 데이터 웨어하우스 툴킷:DW/BI와 빅데이터 분석을 위한 다차원 모델링 완벽 가이드