데이터 웨어하우스란 무엇이며 어떻게 작동하나요?
데이터 웨어하우스(data warehouse)란 비즈니스 인텔리전스(BI) 활동을 지원하기 위하여 만들어진 데이터 관리 시스템입니다. 이 글에서는 기존 데이터베이스와 데이터 웨어하우스, 데이터 레이크, 데이터 마트가 서로 어떻게 다른지 설명합니다. 더불어 데이터 웨어하우스의 동작 원리와 비즈니스 활용 방안에 대해서도 알아봅시다.
목차
데이터 웨어하우스란 무엇입니까?
맥 시스템 데이터란, 한 마디로 저장 공간의 다른 기본 카테고리 안에 속하지 않는 거의 모든 기타 항목들을 말합니다. 시스템 데이터의 종류로는 브라우저 캐시, 응용 프로그램 캐시, 플러그인 및 확장 프로그램, 디스크 이미지, 로그 파일 등이 있습니다.
- 주제 지향적(subject-oriented): 주제 지향적으로 구성하여 IT 지식이 부족한 업무 담당자라도 이해하기 쉽습니다. 운영에 필요한 모든 것을 저장하는 일반 데이터베이스와 달리, 의사 결정에 필요한 주제와 관련된 데이터만 시스템에 유지합니다.
- 통합적(integrated): 구조가 다른 여러 데이터베이스에서 추출한 데이터를 일관적인 형태로 통합하여 저장합니다. 각기 다른 데이터베이스에서 추출한 데이터의 타입 등의 충돌을 막기 위해서 통합이 필수적입니다.
- 시계열성(time-variant): 현재와 과거 데이터를 함께 저장하여 히스토리 확인이 가능합니다. 각 시점의 데이터를 스냅샷 형태로 저장해 둡니다.
- 비 휘발성(non-volatile): 검색 작업만 수행되는 읽기 전용 시스템으로, 자료의 변경 및 삭제가 일어나지 않습니다. 오로지 검색의 효율성에 초점을 맞춘 시스템입니다.
데이터 웨어하우스의 종류
클라우드 데이터 웨어하우스
클라우드라는 이름에서 알 수 있듯이, 데이터 웨어하우스를 클라우드에 구성할 수 있습니다. 클라우드 서비스 업체에서 솔루션 형태로 제공하며, 관리 및 호스팅을 도와줍니다. 하드웨어를 구매할 필요가 없으므로 초기 비용이 크게 절약됩니다. 또한 사업이 확장됨에 따라서 시스템도 유연하게 확장이 가능하므로 효율적입니다.
온프레미스 데이터 웨어하우스
온프레미스(On-premise) 데이터 웨어하우스란 기업이 자체적으로 데이터 웨어하우스를 구축하는 것을 말합니다. 자체적으로 하드웨어를 구매해야 하므로 비용이 들어가고, 서버 관리에 인력 및 시간이 소요됩니다. 그러나 시스템을 자체적으로 관리할 수 있으므로 높은 수준의 보안을 요구하는 정부 기관 등에서 선호하는 방식입니다.
하이브리드 데이터 웨어하우스
하이브리드 데이터 웨어하우스란 시스템의 일부는 온프레미스로, 일부는 클라우드로 관리하는 방식을 말합니다. 예를 들자면, 보안이 중요한 파트는 온프레미스로, 확장성 및 비용이 중요한 파트는 클라우드로 구성할 수 있습니다. 그러므로 잘 구성한다면 보안과 확장성, 비용까지 잡을 수 있습니다. 또한 기업 보안을 위해 VPN까지 함께 사용한다면 보안 유출은 크게 걱정하지 않으셔도 될 것입니다.
데이터 웨어하우스는 어떻게 설계됩니까?
데이터 웨어하우스(data warehouse)는 주로 3가지 계층으로 구성되어 있습니다. 하위 계층은 데이터 소스로부터 데이터를 로딩하고 저장하는 데이터베이스 서버입니다. 중간 계층은 OLAP(Online Analytical Processing) 이라 하는 분석 엔진이 들어갑니다. 가장 마지막으로, 상위 계층에서 보고 및 분석 그리고 데이터 마이닝 등을 수행하여 기업의 의사결정에 도움을 줍니다. 상위 계층이 프론트 엔드 클라이언트 역할을 하는 것입니다.
SQL 데이터 웨어하우스란 무엇일까요?
관계형 데이터베이스를 사용하는 트랜잭션 데이터가 많은 경우에는 SQL 데이터 웨어하우스를 구성하는 것이 좋습니다. SQL 데이터 웨어하우스란 관계형 데이터베이스를 위한 쿼리 언어인 SQL에 최적화 된 데이터 웨어하우스를 말합니다. SQL 데이터 웨어하우스는 관계형 데이터베이스 쿼리 성능을 향상시키고, 데이터를 저장하는 비용을 줄여 줍니다. 대량의 데이터를 분산 아키텍처를 통해 안정적으로 처리해낼 수 있습니다.
데이터 웨어하우스는 어떻게 작동합니까?
데이터 웨어하우스는 데이터들을 수집하여 통합 데이터베이스에 정리하는 식으로 동작됩니다. 데이터 웨어하우스 내부에는 여러 데이터베이스가 포함이 되어 있습니다. 일단 데이터를 수집한 후 스키마를 기반으로 정보를 저장하며, 분석할 때에도 스키마를 기반으로 조회합니다. 엔드 유저인 업무 결정권자가 IT에 관한 지식이 없어도 데이터에 접근할 수 있도록 별개의 서버에 데이터를 보관해 둡니다. 이 데이터로 보고서 작성 등의 활동을 할 수 있는 것입니다.
서버란 데이터 웨어하우스 인가요?
아닙니다. 서버 또는 서버 팜(Server Farm)과 데이터 웨어하우스는 서로 다른 개념으로 봐야 합니다. 데이터 웨어하우스는 여러가지 데이터 소스로부터 데이터를 모아둔 저장 공간입니다. 비즈니스의 현재와 과거 데이터를 모두 정리하여 주제별로 접근할 수 있게 해두고, 사업 관련 의사 결정을 돕는 역할입니다. 컴퓨터 서버들을 모아 둔 서버 팜은 시스템을 운영하는 것이 목적입니다. 서버 컴퓨터가 많으므로 서비스 요청이 많을 때에 부하를 분산시켜서 안정적으로 시스템을 운영할 수 있습니다.
데이터 웨어하우스 vs. 데이터베이스, 데이터 레이크, 데이터 마트
최근 기업 데이터 시스템은 다양한 컴포넌트의 조합으로 이루어져 있습니다. 데이터 웨어하우스, 데이터베이스 및 데이터 레이크는 어떻게 함께 동작할까요?
데이터 웨어하우스는 데이터 레이크나 데이터베이스에서 필요한 데이터를 선택하여 끌어옵니다. 이 때, 데이터 레이크는 정형(structured), 반정형(semi-structured), 비정형(unstructured)의 데이터가 모두 포함된 형태이고 데이터베이스에서는 스키마에 맞춰 정형 데이터만이 있습니다.
또한, 데이터 마트라는 개념도 있습니다. 지금부터 위에 언급한 데이터 시스템의 개념을 비교 분석하여 확실히 정리해 봅시다.
- 데이터 웨어하우스와 데이터베이스 비교 – 데이터 웨어하우스와 데이터베이스의 가장 큰 차이는 ‘용도’입니다. 데이터 웨어하우스는 의사 결정을 위한 정보의 집합으로, ‘검색’을 위한 데이터 시스템입니다. 일반 데이터베이스는 시스템 운영을 위해 CRUD(삽입, 읽기, 갱신, 삭제)를 모두 다 해야 합니다. 또한 데이터 웨어하우스는 데이터베이스에 비해 주제 중심으로 구성되어 전산 지식이 없는 업무 담당자의 의사 결정을 도와줍니다.
- 데이터 웨어하우스와 데이터 레이크 비교 – 데이터 웨어하우스와 데이터 레이크의 차이는 ‘저장 형태’입니다. 데이터 웨어하우스에는 서식이 지정되고 프로세스된 데이터가 저장되는 반면, 데이터 레이크에는 원시 상태의 데이터(Raw Data)가 마구잡이로 저장됩니다. 여기에는 정형, 비정형, 반정형의 데이터가 모두 포함되어 있습니다. 데이터 웨어하우스는 기업에 필요한 데이터를 추리고 정리하여 나중에 의사결정에 도움을 주기 위해 만들어졌습니다. 반면, 데이터 레이크는 언제 사용할 지는 모르지만 일단 관련된 데이터라면 저장해 두는 ‘풀’ 역할을 합니다.
- 이전에 삭제했던 응용 프로그램의 일부 파일이 아직도 남아 있을 수 있습니다.
- 데이터 웨어하우스와 데이터 마트 비교 – 데이터 웨어하우스와 데이터 마트의 차이는 ‘저장 단위’입니다. 데이터 마트는 데이터 웨어하우스의 하위 개념입니다. 기업의 전반 데이터를 다루는 데이터 웨어하우스와 비교했을 때, 데이터 마트는 일부 부서 또는 프로젝트 단위로 데이터가 나누어져 있습니다. 그래서 해당 부서 또는 프로젝트 에서만 접근 권한을 얻을 수 있습니다. 예를 들면, 영업팀은 영업 관련 프로젝트 데이터에만 접근할 수 있는 것입니다. 따라서 전체 스토리지를 검색하는 것이 아니라 관련 부서 내에서만 검색이 이루어집니다. 검색의 속도와 효율성을 크게 높일 수 있습니다.
이 4가지 구성 요소들을 표로 비교해보자면 다음과 같습니다.
데이터 웨어하우스 | 데이터베이스 | |
---|---|---|
데이터의 종류 | 정형(structured) | 정형(structured) |
스키마 | schema-on-write* | schema-on-write |
사용 목적 | 기업 전체의 데이터 분석, 비즈니스 인텔리전스(BI), 의사 결정을 위함 | 기업 시스템 운영을 위한 트랜잭션 처리 |
사용자 | 업무 담당자 | 컴퓨터 과학자 |
데이터 레이크 | 데이터 마트 | |
---|---|---|
데이터의 종류 | 정형(structured)/반정형(semi-structured)/비정형(unstructured) 모두 가능 | 정형(structured) |
스키마 | schema-on-read** | schema-on-write |
사용 목적 | 머신러닝, 탐색적 분석, 데이터 검색, 빅데이터 등 | 해당 부서, 프로젝트 단위의 분석을 위함 |
사용자 | 컴퓨터 과학자 | 업무 담당자 |
*schema-on-write: 저장하기 전에 스키마부터 정의해야 함; **schema-on-read: 저장할때는 스키마와 관계없이 저장이 가능하고 읽을 때 스키마가 정의됨
누가 데이터 웨어하우스를 필요로 하나요?
데이터 분석이 필요한 기업이라면 모두가 데이터 웨어하우스의 도움을 받는 것이 좋을 것입니다. 데이터 웨어하우스는 분석하고자 하는 정보를 중심으로 재구성 및 최적화가 되어있어 빠른 시간 안에 대용량의 데이터를 분석해 냅니다. 따라서 분석된 데이터를 통해 기업의 의사결정을 도와줄 수 있습니다.
기업 비즈니스 인텔리전스(BI) 활동이 있다면 데이터 웨어하우스는 필수적인 존재입니다. 기업의 서비스, 매출 등을 분석하여 새로운 비즈니스 모델도 창출할 수 있을 것입니다. 인공지능, 머신러닝 등의 기술과 더불어 활용하는 방법도 있습니다. 일부 인공지능 빅데이터 기반 챗봇 서비스들도 데이터 웨어하우스 기반으로 설계되었습니다. 그야말로 활용도는 무궁무진 하다고 볼 수 있어, 데이터를 잘 활용하고 싶은 모든 기업에게 필요한 기술입니다.