데이터 웨어하우스(Data Warehouse)란?

이현우·2022년 4월 3일
0

데이터 웨어하우스란?

  • 데이터 웨어하우스(data warehouse)란 사용자의 의사 결정에 도움을 주기 위하여, 기간시스템의 데이터베이스에 축적된 데이터를 공통의 형식으로 변환해서 관리하는 데이터베이스를 말한다. 줄여서 DW로도 불린다.

데이터 웨어하우스는 왜 필요한가?

  • 데이터 분석을 위해 다음과 같은 요청이 있다.
    - 가장 많은 아이템을 판매한 상인은 누구인가?
    - 동일한 물건을 구매한 고객은 누구인가?
    - 판매자별 최고 실적 항목은 무엇인가?
  • 데이터 웨어하우스에선 이러한 질문에 대한 답을 얻을 수 있다. 데이터의 크기에 따라서 운영환경의 데이터베이스에서 직접 답을 구하여도 될 것이다. 하지만 데이터의 크기가 크다면 운영환경의 애플리케이션 성능에 영향을 미칠 수 있다. 데이터 웨어하우스가 있다면 성능에 영향을 미치지 않고 분석 쿼리를 사용할 수 있다.

OLTP Vs OLAP 기반 데이터 웨어하우스

  • OLTP와 OLAP 데이터 베이스의 차이점표
  • 행 기반 데이터베이스
    - 페이지당 하나의 행이 있다고 가정.
Page 1: [1,item_1,gaming,10,'2021-10-02 00:00:00','2021-11-02 13:00:00'],
Page 2: [2,item_2,gaming,20,'2021-10-02 01:00:00','2021-11-02 14:00:00']
Page 3: [3,item_3,biking,30, '2021-10-02 02:00:00','2021-11-02 15:00:00'],
Page 4: [4,item_4,surfing,40, '2021-10-02 03:00:00','2021-11-02 16:00:00'],
Page 5: [5,item_5,biking,50, '2021-10-02 04:00:00','2021-11-02 17:00:00']
  • 열 기반 데이터베이스
    - 페이지당 하나의 열이 있다고 가정.
Page 1: [1,2,3,4,5],
Page 2: [item_1,item_2,item_3,item_4,item_5],
Page 3: [gaming,gaming,biking,surfing,biking],
Page 4: [10,20,30,40,50],
Page 5: ['2021-10-02 00:00:00','2021-10-02 01:00:00','2021-10-02 02:00:00','2021-10-02 03:00:00','2021-10-02 04:00:00'],
Page 6: ['2021-11-02 13:00:00','2021-11-02 14:00:00','2021-11-02 15:00:00','2021-11-02 16:00:00','2021-11-02 17:00:00']
  • 쿼리 실행 분석
SELECT item_type,
    SUM(price) total_price
FROM items
GROUP BY item_type;
  • 행 기반 데이터베이스
    - 모든 페이지를 메모리에 로드해야 한다.
  • 열 기반 데이터베이스
    - 페이지 3,4만 메모리에 로드하면 된다.
  • 열 기반 데이터베이스에서는 2페이지, 행 기반 데이터베이스에서는 5페이지를 로드해야 한다. 더불어 열 기반 데이터베이스에서는 데이터를 좀 더 효율적으로 압축할 수 있다. 이런 점 때문에 열 기반 데이터베이스는 대량의 데이터를 저장하고 분석하는데 적합하다.

Reference

Bomwo 데이터웨어하우스란?
Start Data Engineering

0개의 댓글