비투엔 기술기고

[기고] Data Warehouse Vs. Data Lake

알 수 없는 사용자 2017. 7. 12. 18:27







전 세계 데이터 관련 컨설팅 회사 및 저명 인사들이 한 자리에 모이는 Enterprise Data World(이하 EDW) 컨퍼런스. 2017 EDW에서 가장 많이 많이 다뤄졌던 주제 중 하나는 '데이터 레이크'였다. 지금부터 EDW의 The Components of Data Lake Architecture 세션 내용을 기반으로 '데이터 웨어하우스'와 '데이터 레이크'에 대한 차이 분석을 통해 데이터 레이크의 개념 정리와 효율적인 활용 측면에서 하이브리드 데이터 웨어하우스를 이야기 해보고자 한다.


기업의 정보시스템을 분류해보면 크게 그 기업을 영위하기 위한 거래 / 매출, 비용의 발생 및 처리 정보같은 기간 정보를 관리하는 기간계(계정계) / 그러한 기간 업무를 지원하는 홈페이지 / 콜센터와 같은 채널계 / 기간계 및 채널계 시스템의 주요 정보를 바탕으로 성과측정, 결산 등의 업무처리와 데이터 분석을 통해 기업 주요 전략 수립의 기초정보를 만드는 정보계(데이터 웨어하우스)로 분류할 수 있을 것이다. 지금 기술하고자 하는 '데이터 레이크' 전문가들은 데이터 웨어하우스와 데이터 레이크를 적절하게 잘 활용하는 기업이 향후 IoT, 빅데이터 시대에 경쟁력을 갖춘 기업이 될 것이라는 전망을 하고 있었다.


먼저 데이터 웨어하우스의 아키텍처 및 처리프로세스는 아래 [그림1]과 같다. 기간계, 홈페이지, 콜센터 등 다양한 원천 시스템 데이터 중 정보 분석의 가치가 있는 정보를 데이터 주제별로 분류하고, 분석 목적 별 데이터 마트를 생성한 뒤, OLAP 툴 또는 SQL을 이용하여 최종 정보 이용자들이 활용하게 된다. 이러한 데이터 웨어하우스를 시스템 관점으로 봤을 때 장점은 [표1]과 같이 여러 시스템의 정보를 통합하여 정보 분석을 할 수 있고, 분석 목적 별 데이터 마트를 생성하여 동일한 데이터에 대한 다중 엑세스를 제거할 수 있으며, 운영 시스템의 부하를 경감시키고, 시스템을 읽기 최적화 시스템으로 적용할 수가 있다. 또한, 시계열 데이터를 관리하여 추이 분석이 가능하고, 다른 어떤 시스템과 비교해도 장점으로 볼 수 있는 비 IT 인력 주도적로 데이터 분석을 할 수 있다는 장점을 가지고 있다.


  • Eliminate multiple access on same source data

  • Reduce stress on production systems

  • Optimized for read access

  • Integrate many sources of data

  • Keep historical records

  • Self-service analytics  No IT involvement required to create reports

[표1] Benefits of Data Warehouse


기업의 다양한 정보를 통합하여 연계분석 하는 것과 비IT 인력 주체적으로 데이터를 분석한다는 것은 기업의 다른 여러 시스템과 차별되는 데이터 웨어하우스만의 특별한 장점이라고 할 수 있을 것이다.



[그림1] Data Warehouse Architecture and Process


하지만 시대가 변하면서 IT 환경도 급격히 바뀌게 되어 트위터, 페이스북 같은 SNS 데이터와 다양한 포털사이트의 데이터, 실시간으로 발생하는 디바이스 로그 데이터의 패턴 등을 분석하지 않고서는 경쟁사와의 경쟁에서 밀릴 수 밖에 없는 상황에 이르렀다. 이러한 측면과 더불어 데이터 웨어하우스의 한계점을 정리해보면 원천 시스템에서 데이터 웨어하우스에 이관하는 것은 매우 오랜 시간이 소요되고, 데이터 소스가 추가되더라도 복잡한 데이터 모델의 제약을 맞춰야 하는 문제가 있어 타사 및 클라우드 기반 데이터를 자사에 정의된 데이터 모델에 통합하기가 어렵다. 또한, 다양한 소스 시스템의 정보를 통합하기 때문에 인프라 증설이 주기적으로 이루어져 운영 비용이 상대적으로 많이 발생하고 있다는 한계점을 가지고 있다.


  • Time Consuming delivery

  • Rigid model makes change complex

  • Expensive infrastructure and software

  • Lost Context and business meaning for sophisticated analytics

  • Time to integrate 3rd party and cloud based data with self-defined data models

[표2] Limits of Data Warehouse


이러한 데이터 웨어하우스의 정보분석 한계를 개선하기 위해 데이터 레이크라는 개념이 생겼는데, 이 개념은 2000년대 GE(General Electric)사의 데이비드 바틀렛에 의해 처음 만들어 졌다. [그림2]와 같은 아키텍처를 가진 데이터 레이크를 정의해보면 대용량의 데이터들을 억지로 통합해 단일 형식으로 만드는 데이터 웨어하우스와는 다르게, 원래 형식으로 저장했다가 나중에 쉽게 분석할 수 있도록 하는 대규모 저장소라 할 수 있다. 생물학에 관심이 있었던 바틀렛은 시냇물이 모여 이루어진 호수가 겉으로는 잔잔해 보이지만, 수면 아래에서 이루어지고 있는 미생물의 활동, 자정작용 등 다양하고 복잡한 활동들을 통해 그 생태계가 유지된다는 측면에서 데이터 레이크라는 용어를 사용했다고 한다. 데이터 웨어하우스와 데이터 레이크를 낚시에 비유해 본다면 데이터 웨어하우스는 양식장에서 낚시하는 것으로, 양식하는 어종만 낚을 수 있다. 반면 데이터 레이크라는 호수에서는 다양한 물고기를 낚을 수 있다는 측면으로 이해해도 될 것이며, 데이터 레이크를 통한 데이터 분석은 무궁무진한 정보를 창출 할 수 있다는 것이다.



[그림2] Data Lake Architecture


데이터 레이크에서 SNS, 디바이스 신호 로그 데이터 같은 빅데이터를 처리하는 방식은 DBMS의 병렬 처리와 유사하게 데이터를 독립적으로 작은 형식으로 나누고 다시 취합하는 기법을 적용하는데, 가장 보편화된 기술이 아파치 하둡과 같은 맵리듀스 방식의 분산 데이터 처리 프레임워크이다. 하둡의 구성요소 가운데 핵심 구성은 바로 저장과 처리(계산)이다. 하둡 분산 파일시스템(HDFS)를 통해 분산 서버에 저장하고, 맵리듀스를 통해 각각의 분산 서버에서 병렬로 처리한다.


이러한 데이터 레이크의 장점을 정리해보면 [표3]과 같이 구조화된 타입의 데이터, 구조화 되니 않은 타입의 데이터와 상관 없이 할용할 수가 있다는 것이다. 즉 소셜미디어의 데이터와 CRM데이터를 저장하여 데이터 분석을 할 수가 있다. 또한 이는 원천 상세 데이터를 가지고 패턴분석을 할 수 있어 데이터 웨어하우스에서 분석하지 못했던 영역까지 분석할 수 있다는 의미이다. 위에 설명 했듯이 데이터 레이크 아키텍처는 분산 저장 구조이며 관계형 데이터베이스와 비교해서 매우 저렴한 저장매체를 이용 할 수 있으므로 비용적인 측면에서는 상당한 큰 장점을 가지고 있다.


  • Ability to store all types of structured and unstructured data in data lake, from CRM data to social media posts

  • Ability to store row data - you can Refine it as your understanding and insight improves

  • Ability to analyze very high volumes that are physically distributed

  • Less expensive storage allows the maintenance of raw details

  • Tools Enabling complex analytics - predictive analytics and machine learning

[표3] Benefits of Data Lake


앞서 이야기되었던 IT 환경의 변화에 따라 비정형적인 데이터를 억지로 통합해 단일 형식으로 만드는 대신 원본에 변화 없이 입수하여 데이터 사이언티스트가 입수 데이터를 평가하며, 데이터 유용성을 판단하고, 데이터 분석가가 고급 분석을 수행할 수 있도록 지원한다. 데이터 레이크는 정형 데이터뿐만 아니라 비정형 데이터, 반 정형 데이터까지 입수(ingest), 분석, 저장할 수 있어 기존 데이터 웨어하우스 보다 데이터에 대한 훨씬 유연한 접근이 가능하고 상세데이터로 세밀한 분석, 패턴 분석이 가능케 된다.


이러한 데이터 레이크도 [표4]와 같이 한계점이 있는데, 데이터 레이크를 구축하고 활용하는 기술이 어려워서 , 습득과 활용이 쉽지 않고, 무엇보다도 관련 전문가가 수요 대비 턱 없이 부족하다는 것이다. 또한, 실시간 처리, 데이터 갱신, 데이터를 통합하여 연계 분석이 쉽지 않다. 마지막으로 데이터 웨어하우스와 같이 비 IT 담당자가 직접 데이터를 분석할 수 있는 환경이 아니라는 단점이 있다.


  • Resources to use new technologies and techniques are very expensive

  • Governance(meta data, audit trail) and security(access) are not built in to new technology

  • solutions and require advanced knowledge and effort to implement additional solutions and processes

  • Not meant to support large numbers of users with limited analytics skills

  • Doesn't easily support data integration, real time processing, data update

[표4] Problems with Data Lake


데이터 웨어하우스와 데이터 레이크에 대한 장단점을 고려했을 때 현재의 IT 환경에서는 어떤 시스템을 활용하는 것이 올바른 선택일까?


이 질문에 대해 데이터 레이크 전문가들은 "재무 보고서나 정부기관에 파일링을 하는 경우라면 최대한 깔끔하고 정확한 데이터가 필요하여 데이터 웨어하우스가 적절한 솔루션이 될 수 있다. 데이터 웨어하우스나 데이터 레이크의 선택 기준은 비용이 아니다. 정말로 비즈니스 의사 결정과 직결되어 있는 정보라면 잘 정돈되고 확실히 신뢰할 수 있어야 하므로, 데이터 레이크를 사용하지 않는 것이 정답이다."라고 얘기한다. 데이터 레이크 역시 목적에 따라, 그리고 이용 방법에 따라 오히려 독이 될 수 있다는 것이다. 데이터 레이크에서 일어나는 데이터 분석은 구체적이고 정확하고 정밀한 결과의 제공이라기 보다는 대략적인 트렌드 분석, 방향성 파악에 더 가깝기 때문에 해당 용도에 따라 적절하게 활용해야 한다.


더 나아가 데이터 레이크 기반의 데이터 분석을 좀 더 효과적으로 하기 위해, 기존의 데이터 웨어하우스와 데이터 레이크를 연계한 하이브리드 데이터 웨어하우스 개념이 도입되어, 많은 기업에서 활용 되고 있다. 하이브리드 데이터 웨어하우스의 아키텍쳐는 [그림3]과 같이 데이터 웨어하우스의 정형 분석 정보를 데이터 레이크에 SQOOP을 이용하여 이관 후 데이터 레이크에서 분석하거나, 데이터 레이크의 분석 결과를 정형 데이터로 변환한 후 SQOOP을 통해 데이터 웨어하우스로 이관하여 데이터 웨어하우스 정보와 연계해 다양한 분석을 할 수 있다는 것이다.


앞서 말했듯이 현대의 기업은 기존의 데이터 분석과 더불어 실시간으로 발생하는 고객의 다양한 데이터를 분석하지 않고서는 경쟁사와의 경쟁에서 밀릴 수 밖에 없기 때문에, 이러한 상황에서 하이브리드 데이터 웨어하우스의 구축은 좋은 대안이 될 것이라고 생각한다.




[그림3] 하이브리드 데이터 웨어하우스