본문 바로가기

Data Base/Data Architect

Data Lake, Data Warehouse, Data Mart

 

 

Data Lake

데이터 레이크는 비즈니스에서 필요한 다양한 타입의 데이터를 저장하는 공간과도 같다. 데이터 수집 방식은 모든 데이터를 dump 처리하여 저장한다고 생각하면 된다. Data Lake는 다음과 같은 두가지 경우에 주로 사용한다.

 

1. 제품이 많은 기능을 갖고 있거나, 기업 규모가 큰 경우 비즈니스를 위해 데이터를 분석하는 다양한 방식이 있을 것이다. 이런 경우 대량의 데이터를 다양한 타입으로 저장하는 가장 저렴한 방식이 필요하다.

예를 들면 B2C의 경우 Twitter를 생각해보면, 텍스트(Tweets), 이미지, 비디오, 링크, 다이렉트 메세지, 라이브 스트림 등과 같은 타입의 데이터가 있을 것이다. B2B의 경우 거래, 환불, 교환, 고객 사인, 로그온 ID 등과 같은 데이터가 있을 것이다.

 

2. 데이터에 대한 분석 방식이나 계획이 없는 경우, 데이터를 특정 관점으로 사용하기 위한 용도를 가지고 있을 것이다. 그러므로 일단 데이터를 모으고 후에 분석하려고 하는 것일테니까. 이런 경우 전통적인 DB(RDBMS)의 사이즈가 매우 크고 한 쿼리를 돌리는데에 며칠이 걸릴 수도 있다. 그런 경우 분산 처리 방식(MPP, Massively Parallel Processor) 툴이 그 속도를 올려줄 수 있다.

 


Data Warehouse

데이터 웨어하우스는 보통 모델링에 필요한 구조적인 데이터만을 저장한다. 데이터 웨어하우스는 다양한 목적으로, 구성될 수 있다. 특정 비즈니스 유닛이나 기능에서 신규 요구사항을 넣는 것을 고려할 필요는 없다. 예를 들어, 회사의 재무부서에 대해서 생각하자면, 이윤, 비용, 수익 등과 같이 사업적인 의사결정에 필요한 기준만 고려한다. 마케팅이나 영업에서 고려하는 기준은 없다. 만약 그게 겹쳐진다면, metric의 정의는 달라질 수 있다.

 

 


데이터 웨어하우스와 데이터 레이크의 비교

아래와 같은 큰 5가지 관점에서 데이터 웨어하우스와 데이터 레이크는 차이를 갖는다.

1. 구성된 데이터 타입이 다르다.

데이터 웨어하우스는 주로 전통적인 시스템으로부터 추출한 데이터로 이루어져있고, 정량적인 metric과 그것을 설명하는 자료로 이루어져 있다. 

데이터 레이크는 전통적이지 않은 데이터 타입, 예를 들면 웹 서버 로그, 센서 데이터, 소셜 네트워크 활동, 텍스트나 이미지 등과 같은 것들로 이루어져 있다. 전통적이지 않은 데이터 소스는 저장과 사용에 고비용이 들 수도 있다는 단점이 있다.

 

2. 사용자의 노력

데이터 웨어하우스는 operational 사용자들에게 이상적일 수 있다. key performance에 대한 분석을 하거나 매일 데이터에 대해 운영하는 방식을 평가하기 위한 경우 이상적이라는 의미이다. 데이터 웨어하우스는 데이터 통합, 데이터 전처리, 데이터 분석을 위한 소스가 될 수 있다. data scientist는 데이터 웨어하우스의 데이터를 활용해서 예측 모델링이나 통계 분석과 같은 더 깊은 분석이 가능하다. 

데이터 레이크는 예를 들면, data scientist가 데이터 레이크의 데이터를 사용해서 그들이 필요한 데이터를 만들고, 비즈니스 관리자들의 목적에 맞는 analytical한 관점의 데이터를 활용한다.

 

3. 데이터의 유지

데이터 웨어하우스의 생산이 있는 동안, 데이터 소스를 분석하고 비즈니스 프로세스를 이해하고 데이터를 구성하는데에 많은 시간이 지나갔을 것이다. 이 과정에서 어떤 데이터를 포함하고 제외할지에 대한 결정도 포함된다. 

하지만 데이터 레이크는 모든 데이터를 유지한다. 오늘의 데이터 뿐 아니라 특정한 과거의 사용된 데이터 모두를 유지한다. 데이터는 꽤 오랜 기간 축적되고, 언젠가 데이터 분석을 하는데에 다시 사용될 수 있다. 

 

4. 변화에 대한 유연성

좋은 데이터 웨어하우스 설계는 변화에 매우 적용가능하다. 데이터의 유연성 때문에 데이터를 분석하게 하고 쉽게 리포트하게 한다. 이 변화들은 개발자와 같은 자원과 시간의 투자는 필수적으로 요구된다.

많은 기업에서 요즘은 데이터 웨어하우스 팀을 만들고 그들의 내부 시스템에 이것을 적용한다. 

데이터 레이크는 raw form으로 저장된 데이터로, 누구나 필요한 사람은 모두 접근 가능하도록 한다. data exploration에 필요한 능력은 데이터 레이크에 조금 적게 들 수 있다.

 

5. 빠른 인사이트 제공

데이터 레이크는 모든 데이터와 데이터 타입으로 이루어져 있다. 전통적인 데이터 웨어하우스의 접근보다 빠르게 구조화하고 변형 가능하다. 

하지만, 이 접근은 그렇게 편리하지 않을 수 있다. 데이터 웨어하우스 팀으로부터 수행되고 있는 이런 전형적인 일은 모든 데이터 소스에 대해 똑같은 방식을 요구하지는 않기 때문이다. 사실 비즈니스 사용자들은 데이터 레이크와 같은 KPI를 달성하고 보고하기 위해 데이터에 접근한다.

데이터 레이크에 저장된 데이터를 활용하여 이런 조직적인 보고를 하는 것이 데이터 웨어하우스에 저장된 것을 활용하는 것보다 훨씬 유용할 수 있다. 

 

 

 


Data Mart

데이터 웨어하우스는 다양한 사용 방식을 갖고 다양한 목적으로 저장을 하는 공간인 반면, 데이터 마트는 데이터 웨어하우스의 subsection과 같이 특별한 조직 혹은 특별한 비즈니스 기능을 위한 목적으로 설계되고 구성된다. 데이터 마트의 이점은 아래와 같다.

  • Isolated Security: 데이터 마트가 특정한 부서의 데이터만을 포함할 수 있기 때문에, 물리적으로 재무 데이터나 비용 데이터와 같은 데이터에 대해 사용자의 접근을 차단할 수 있다.
  • Isolated Performance: 비슷하게, 각 데이터 마트는 특정한 부서를 위해서만 사용되기 때문에, 다른 분석적인 워크로드에 영향을 미치지 않고 성능 측면에서 잘 관리되고 그 조직과 소통하기에 편리하다.

 


3가지 종류의 데이터 마트

1. Dependent Data Marts

dependent data mart는 기존 데이터 웨어하우스로부터 설계된다. top-down 방식의 접근으로, 하나의 중앙의 저장소에서 비즈니스 데이터를 모으고, 분석에 필요한 데이터를 정리하는 방식으로 진행된다.

 

2. Independent Data Marts

independent data mart는 독립적인 시스템으로, 하나의 사업 기능에 초점을 맞춰서 데이터 웨어하우스의 사용 외의 목적으로 사용된다. 데이터는 내부 혹은 외부 데이터 소스로부터 수집되어 정제되고 데이터마트에 저장된다. 그리고 필요한 시점까지 혹은 데이터 분석을 위해서 사용될 때까지만 저장되고 폐기된다.

 

3. Hybrid Data Marts

hybrid data mart는 현재의 데이터 웨어하우스로부터 얻은 데이터를 추가적으로 opertaional 시스템으로부터 얻은 데이터와 통합하는 것이다. 속도와 최종 사용자의 관점에서 기업 수준의 통합을 위한 top-down 접근을 bottom-up 방식으로 진행하는 것이다.

 

 

 

References

https://www.holistics.io/blog/data-lake-vs-data-warehouse-vs-data-mart/