2021년 11월 30일 화요일

많은 기업들이 Big Data 시대를 거치면서 Data Lake를 구축하고 운영하려는 시도를 하였다. 기존 Data Warehouse만으로 처리할 수 없었던 Unstructured Data처리를 할 수 있는 유연성과 Data Warehouse에 비해 낮은 Data 보관 비용이 주된 이유였으나, 기술적인 그리고  운영적인 문제들로 일부 기업들만이 성공적으로 운영환경에서 Data Lake를 사용하고 있다.

Data Lake초창기에는 대부분의 기업들이 Hadoop기술을 이용하여 각자의 Data Center내에 Data Lake를 구축하였으나, Public Cloud의 등장과 함께 Object Storage를 이용하여 Public Cloud에서 Data Lake를 구축하는 사례로 생기고 있다. Public Cloud에서 Data Lake를 구축하게 되면, 새로운 Hardware의 구매나 Data Backup과 같은Infrastructure 운영을 할 필요가 없고, 사용량에 따른 비용이 청구되어 보다 간편하게 Data Lake를 구축할 수 있게 된다. 1

2

하지만 위 그림과 같이 많은 양의 Data가 적재된 상태에서 적당한 운영 Process가 없으면, 해당 Data Lake는 아무짝에도 쓸모없는 Data 늪이 되어버리게 된다. 여러 기업들의 사례들을 보았을 때 크게 세가지 문제가 대두된다. 두가지 문제들은 첫째로 Metadata를 관리하는 문제와 둘째로Data Warehouse와 Data Lake를 같이 사용할 때 Process 문제이다.

Data Lake에서 Metadata를 생성하고 관리를 하는 목적은 Data의 권한 관리부터 Life Cycle 을 관리해야하기 위함이다. 이는 중앙집중형 Metadata 관리를 통해서 문제 해결이 가능하다. 3 Public Cloud에서 Identity and Access Management (IAM)을 이용하면 각 Object Storage의 권한 관리를 한 곳에서 설정할 수 있으며, Object Storage의 Event를 활용하면 Data Life Cycle도 손쉽게 가능하다.

대부분의 기업들은 Data Warehouse를 이용해서 Structure된 Data의 분석을 하고 필요한 정보를 얻고 있다. 하지만 Data Lake에 보관되어있는 Unstructured Data와 Data Warehouse에 있는 Structured Data를 같이 분석하기 위해서는 Extract-Transform-Load (ETL) 을 수행하여 Unstructured Data를 Structured Data 형식으로 변경하여 Data Warehouse에 Load하거나, 필요한 Unstructured Data를 Data Warehouse에서 External Table로 정의하여 사용할 수 있다.

위 방법들 중, ETL은 미리 어떤 Unstructured Data가 필요한지 알지 않으면 많은 양의 Data를 Data Warehouse에 보관해야하는 비용이 발생하고, External Table을 사용하면 간단한 분석 밖에 못하는 단점이 있다. 많은 기업들이 이 문제를 해결하기 위해서 사용하는 방법은 Data Lake에서 초기 분석을 하고, 어느정도 시간 동안 실험적으로 분석 결과를 검증한 후에, ETL을 통해서 Structured Data를 Data Warehouse로 Data를 옮기는 방법이다. 물론 실시간 분석을 위해서 Data Warehouse에 Data를 옮기지 않고 Data Lake에서 바로 조회를 하는 방법도 있으나, 성능이나 다른 요구조건들 때문에 Data를 옮기는 경우도 있다. 이와 같은 방법은 Data Lake의 유연성을 극대화하고, 기존 Data Warehouse의 성능과 Data들을 활용할 수 있는 장점이 있다. 4

다음 글들에서 Public Cloud의 Data Lake에서 초기 분석을 하는 기술들과 방법들 그리고 ETL 기술들과 방법들을 살펴보고자 한다.

  1. Should you host your data lake in the cloud?
  2. Don’t Let Your Data Lake Turn Into A Data Swamp
  3. How To Fill Your Data Lakes And Not Lose Control Of The Data
  4. Data Lakes And Data Warehouses: The Two Sides Of A Modern Cloud Data Platform

    Related Posts

    클라우드 서비스와 오픈소스 라이선싱
    ML 모델 도입을 위한 SageMaker의 효율성
    클라우드 환경에서의 데이터베이스 가용성

    3 Responses

    1. Pingback : Unified Data Platform 과 데이터베이스 - CloudInsight

    2. Pingback : 오픈 포맷 데이터 성능 향상 전략 - Part 1 캐싱 - 클라우드 인사이트

    Leave a Reply