Computer Engineering/DataPlatform

데이터 웨어하우스와 데이터 플랫폼의 차이

jordan.bae 2022. 12. 18. 00:12

기존의 데이터 분석환경은 데이터웨어하우스 중심으로 구성되어있었다면 근래의 데이터 플랫폼은 다양한 대규모의 데이터를 수집, 저장, 관리, 분석하고 거버넌스 할 수 있는 종합적인 시스템을 의미합니다. 그렇기 때문에 다양한 계층과 소프트웨어로 구성되어 있습니다. 기존의 전통적인 단일 웨어하우스와 다른 점은 각각의 레이어를 분리하고 보다 다양한 데이터를 다루고 컴퓨팅이 확장가능하도록 구성했다는 점입니다.

단일 데이터 웨어하우스 시스템

출처: Aestro systems

위에 그림은 데이터웨어하우스 중심으로 구성된 시스템입니다. 이렇게 시스템을 구성했을 때 단점은 데이터웨어하우스에서 다룰 수 없는 데이터 포맷들은 다룰 수 없고, 컴퓨팅 리소스 또한 데이터웨어하우스에 종속적입니다. 데이터 플랫폼에서는 컴퓨팅과 분리된 오브젝트 기반의 스토리지인 데이터 레이크와 상황에서 따라서 빅쿼리 같은 클라우드 데이터 웨어하우스를 사용할 수도 있습니다.

 

Data Platform

출처: MonteCarlo

데이터 플랫폼은 기존의 데이터웨어하우스 중심의 구조와 달리 Storage/Processing 및 Transformation/Modeling 레이어를 따로 구성하고, Data Observability와 Data Discovery와 같은 Governance적 성격을 같은 구성요소들도 포함되어 있습니다. 각각의 레이어를 추가함에 따라서 얻을 수 있는 장점은 아래와 같습니다.

Datalake를 추가한 데이터 플랫폼을 구축하는 경우의 차이

장점
- 스키마의 변경을 처리하는 방법. lake에서는 데이터를 파일로 가지고 있기 때문에 서로 다른 schema 데이터를 가지고 있을 수 있다. 즉, Process Layer에서 해당 변경을 처리하는 로직을 가지고 있다면 스키마의 변경에 유연하게 대처할 수 있다. (DW는 고정된 Schema를 가지고 있기 때문에 바로 source의 data를 ingestion하는 경우는 문제가 발생한다.)

- PII 데이터에 대한 처리 JSON 데이터를 flaten해주는 enrich작업들을 process layer에서 진행이 가능한데 이는 Python, Scala, Java같은 Language가 SQL에 비해 유연하고 관리하기 쉽기 때문에 강점을 가지고 있다. 특히, 복잡한 로직이 들어가는 경우일 수록..!

- 데이터 웨어하우스보다 다양한 형태의 데이터를 저장할 수 있다.

- 컴퓨팅 엔진이 스토리지와 독립적이므로 분리해서 확장이 가능하다.

단점

- 데이터 레이크 레이어의 파일 사이즈나 패스를 관리해야하는 관리요소들이 존재한다.

- SQL 기반이 익숙한 유저들을 위해서 따로 환경을 구축해야 하는 이슈가 발생할 수 있다.

 

Data Observability, Data Discovery

위의 부분들은 Data의 품질을 보장하고, 더 잘 활용할 수 있도록 돕는 부분들로 구축하는데 리소스를 필요로 하지만 데이터를 기반으로 다양한 활용을 하기 때문에 시스템이 확장됨에 따라서 꼭 필요한 부분입니다.

데이터 플랫폼에 대해서 조금 더 자세히 알고싶으시다면 데이터 플랫폼이란 이 글을 추천드립니다.

 

데이터 플랫폼은 여러 시스템들의 장점들을 활용해서 다양하고 큰 규모의 데이터를 효율적으로 처리하기 위해서 각 layer로 나뉘어져 있는 시스템이다.


Reference

- 개인 경험
- https://ichi.pro/ko/awsui-deiteo-leikeu-haujing-136847715915919
- 데이터 플랫폼 설계와 구축 책

반응형