메뉴

문서정보

목차

Data-warehouse

Data warehouse(DW 혹은 DWH)는 enterprise data warehouse(EDW)라고 부르기도 한다. DW는 데에터 분석과 레포팅에 사용하는 시스템으로 Business intelligence(BI)핵심 구성요소다. DW는 하나 이상의 개별 데이터소스를 통합하는 중앙 저장소로 기능한다. 기업의 과거와 현재, 상품, 서비스, 임직원의 업무성과에 대한 모든 정보가 저장돼 있고, 이 정보들로 부터 사업보고서를 작성하는 것이 대표적인 예가 될 것이다.

Data warehouse 구성 개요

 Data warehouse overview

operational systems은 DW에서 조직의 일상적인 트랜잭션을 처리하는데 사용되는 시스템을 지칭하는 용어다. 때때로 operational systems은 OLTP(online transaction processing systems)라고 부르기도 한다. 여기에서 처리하는 데이터는 아래와 같다.

Organization 데이터
제조회사 제품 데이터
은행 계좌 데이터
병원 진료기록
대학 학생정보
정부 각 부서의 정책
ETL은 일련의 Extract, Transform, Load 과정이다. DW는 일반적으로 integration layer에서 ETL을 기반으로 데이터를 액세스하고 통합한다. 통합의 목적은 쓸만한 정보를 끄집어 내는 것이다.

데이터추출(Extract)에서는 다양한 종류의 소스로 부터 데이터를 추출한다. 의사결정을 위한 데이터는 RDBMS, No-SQL, 파일, 외부 서비스(Google Analytics 같은), Elastic Search 등 다양한 저장소에 다양한 형식으로 저장이 돼 있기 때문에 사용할 수 있는 형식으로 변환(Transform)하는 작업을 해야 한다. 마지막으로 이렇게 변환된 데이터는 operational data store, data mart, data lake, data warehouse등으로 올리는(load) 작업을 수행한다. 사용자는 여러가지 애플리케이션을 이용해서 의사결정에 필요한 정보들을 얻게 된다. 의사결정도구에는 BI(business intelligence), 메타 데이터의 관리와 검색을 위한 도구들이 포함된다.

장점

DW는 원본 트랜잭션 시스템의 복사본을 관리한다. 아키텍처가 복잡해지는 만큼 아래의 기회를 제공한다.

Generic

DW와 data marts는 아래의 환경을 포함한다. DW를 구성하는 데이터의 소스들은 회사의 운영 데이터메이스이며 관계형 데이터베이스 혹은 NoSQL 때때로 파일 일 수도 있다. 메타 데이터는 데이터에 대한 데이터다. 예를들어 IT 관리자는 데이터 소스, 데이터베이스에 대한 테이블과 열 이름, 별칭, 업데이트 시간, 데이터 사용량 측정 값등에 대한 추가적인 데이터가 필요하다.

오늘날 가장 성공적인 회사는 시장 변화와 기회에 빠르고 유연하게 대응 할 수 있는 회사다. 이러한 요청에 대한 핵심 키는 "데이터 관리자가 데이터와 정보를 효과적으로 사용하는"데 있다. DW는 조직의 의사결정자가 사용 할 수 있도록 주제별로 구성되는 데이터베이스 저장소다. 이 데이터가 Data mart 혹은 웨어 하우스에 저장되면 의사결정자가 사용할 수 있게 된다.

관련 시스템들 - Data mart, OLAP, OLTP, predictive analytics

Data mart는 단일 주제만을 대상으로 하는 비교적 간단한 구성을 가진다. 예를들어 판매, 재무 또는 마케팅과 같은 제한된 수의 소스에서 데이터를 가져온다. 종종 조직 내 단일 부서등에서 구축한다. Data mart는 DW에 포함된 데이터의 서브셋을 포함하므로 구현이 빠르고 쉽다.

Attribute Data warehouse Data Mart
데이터 범위 엔터프라이즈 영역 부서 영역
주제의 갯수 하나 이상 하나
구축 난이도 어렵다 쉽다.
구축 시간 많은 시간 적은 시간
메모리 크기 크다 제한적
OLAP(Online Analytical Processing)은 비교적 적은 양의 트랜잭션이 특징이다. 쿼리는 종종 매우 복잡하며 집계와 관련된 경우가 많다. OLAP응용 프로그램은 데이터마이닝에서 널리 사용된다. 사용자는 동일한 데이터를 여러 기준을 이용하는 방법으로 다차원 데이터 분석을 할 수 있다.

OLTP(Online Transaction processing)은 짧은 온라인 트랜잭션 (INSERT, UPDATE, DELETE)를 특징으로 한다. OLTP 시스템은 다중 액세스 환경에서 빠른 쿼리 처리와 데이터 무결성 유지를 중요하게 생각한다. OLTP 시스템의 효율성은 초당 트랜잭션 수로 측정된다. 일반적으로 OLTP 데이터베이스에는 최신의 상세한 정보들이 저장된다. 트랜잭션 데이터베이스에는 entity 모델(3NF라고 부른다.)을 주로 사용한다.

Predictive analytics은 복잡한 수학적 모델을 이용해서 데이터에 숨겨진 패턴을 찾아내고 정량화 해서 미래의 결과를 예측하는데 사용한다. 분석이라는 측면에서 OLAP와 비슷한 측면이 있지만, OLAP는 과거 데이터 분석에 중점을 두고 Predictive analytics는 미래에 중점을 둔다는 차이가 있다. 이 시스템은 CRM에도 사용한다.

클라우드 서비스에서의 설명

다른 클라우드 시스템에서는 어떻게 설명하고 있는지 찾아봤다. 여기에서는 간단히 소개만 한다. 자세한 내용은 집중해서 공부를 해야 할 것 같다.

AWS

데이터 웨어하우스는 보다 정보에 입각한 의사 결정을 내릴 수 있도록 구축된 분석 가능한 정보의 중앙 리포지토리입니다. 데이터는 트랜잭션 시스템, 관계형 데이터베이스 및 기타 소스로부터 정기적으로 데이터웨어 하우스로 입력된다. 비지니스 애널리스트, 데이터 과학자 및 의사 결정권자는 비지니스 인텔리전스 도구(BI), SQL 클라이언트 및 기타 분석 응용 프로그램을 통해서 데이터에 액세스한다.

데이터 및 분석은 비지니스가 경쟁력을 유지하는 데 없어서는 안되는 부분이 되었습니다. 비지니스에서는 보고서, 대시보드 및 분석도구를 사용하여 데이터에서 통찰력을 찾아내고, 비지니스 성과를 모니터링하며, 의사 결정을 지원합니다. 이러한 보고서, 대시보드 및 분석 도구를 지원하는 것이 데이터웨어 하우스입니다. 데이터웨어 하우스는 데이터를 효율적으로 저장하여 I/O를 최소화하고 수십만 명의 사용자에게 놀라울 정도로 빠른 속도로 쿼리 결과를 전달합니다.

AWS 기반 엔터프라이즈 데이터 웨어하우징 백서문서를 읽어보자.

Azure

Azure는 Azure SQL Data Warehouse라는 클라우드기반 EDW(Enterprise Database Warehouse)를 제공한다. MPP(대규모 병렬처리)기술을 이요해서 페타바이트 데이터에대해서 복잡한 쿼리를 신속하게 실행 할 수 있다. SQL Data Warehouse의 구성은 아래와 같다. 일반적인 DW 구성과 차이는 없다.

 Azure SQL Data Warehouse

정리