Data Lake House

Data Lakehouse 개념

pogun 2024. 8. 19. 02:31

데이터 레이크하우스

- 데이터 레이크의 유연성 및 확장성 그리고 데이터 웨어하우스의 유사한 데이터 구조 및 데이터 관리 기능을 결합한 새로운 개방형 아키텍처

- 이러한 기능의 조합 덕분에 데이터 과학 팀에서 여러 시스템에 액세스할 필요 없이 민첩하게 데이터를 사용가능

- 데이터 레이크하우스는 데이터 과학자가 완벽한 최신 상태의 데이터를 이용하도록 보장

데이터 레이크

- 엔터프라이즈의 모든 데이터 소스에서 얻은 모든 유형의 원시 데이터, 구조화된 데이터, 구조화되지 않은 데이터를 적절한 규모의 기본 형식으로 저장

- 데이터는 원래 상태로 데이터 레이크에 추가되므로 이미 시스템에 있는 다른 데이터에 맞추기 위해 새로운 데이터 형식으로 변경되지 않음

- 데이터 레이크는 AI 및 ML 시스템과 빅데이터 분석에 데이터를 이용하는 데 중요한 역할을 함

데이터 웨어하우스

- 다양한 소스의 데이터를 하나의 일관된 데이터 저장소로 어그리게이션(집합체)한 대규모 비즈니스 데이터 집합

- 이러한 플랫폼은 특별히 많은 양의 구조화된 데이터에 대한 분석을 수행하도록 설계되었음

- 웨어하우스 시스템은 정기적으로 다양한 BI 시스템에서 데이터를 유입한 다음 이미 데이터 웨어하우스에 있는 데이터의 형식과 표준에 맞춰 데이터를 포맷하고 가져옴

- 이를 통해 데이터를 정리된 파일이나 폴더에 저장, 보고 및 데이터 분석에 바로 사용 가능

  데이터 레이크 데이터 레이크 하우스 데이터 웨어하우스
데이터 유형 모든 유형: 구조화된 데이터, 반구조화된 데이터, 구조화되지 않은 데이터 모든 유형: 구조화된 데이터, 반구조화된 데이터, 구조화되지 않은 데이터 구조화된 데이터
체재 개방형 형식 개방형 형식 폐쇄적이고 독점적인 형식
확장성 유형에 관계없이 저렴한 비용으로 모든 양의 데이터를 보관할 수 있도록 확장 유형에 관계없이 저렴한 비용으로 모든 양의 데이터를 보관할 수 있도록 확장 공급업체 비용으로 인해 확장 비용이 기하급수적으로 증가
사용자 데이터 과학자 데이터 분석가, 데이터 과학자, 기계 학습 엔지니어 데이터 분석가
신뢰성 낮은 품질, 데이터 늪 고품질, 신뢰할 수 있는 데이터 고품질, 신뢰할 수 있는 데이터
용이성 데이터를 구성하고 분류하는 도구 없이는 대량의 원시 데이터를 탐색하는 것이 어려움 데이터 레이크의 광범위한 사용 사례를 통해 데이터 웨어하우스의 단순성과 구조를 제공 데이터 웨어하우스의 구조를 통해 사용자의 보고 및 분석을 위한 데이터에 빠르고 쉽게 액세스 가능
성능 낮음 높음 높음

데이터 레이크하우스를 만든 이유?

데이터 레이크의 단점

신뢰성 문제

- 적절한 도구가 없으면 데이터 레이크는 데이터 과학자와 분석가가 데이터에 대해 추론하는데 어려움을 겪음

- 이러한 문제는 배치 및 스트리밍 데이터 결함의 어려움, 데이터 손상 및 기타 요인으로 인해 발생할 수 있음

 

느린 성능

- 데이터 크기가 증가함에 따라 기존 쿼리 엔진의 성능은 느려짐

- 병목 현상에는 메타데이터 관리, 부적절한 데이터 분할 등이 포함

 

보안 기능 부족

- 가시성이 부족하고 데이터를 삭제하거나 업데이트하는 능력이 부족하여 적절하게 보호하고 관리하기 어려움

- 이러한 제한으로 인해 기관의 요구 사항을 충족하기가 어려움

 

 이러한 이유들로 기존 데이터 레이크 자체는 기업의 요구 사항을 충족하기에 충분하지 않음. 따라서 기업은 종종 데이터 웨어하우스, 데이터베이스 및 기타 스토리지와 같은 다양한 스토리지 시스템에 데이터가 격리된 복잡한 아키텍처에서 운영되는 경우가 많았음

데이터 레이크하우스가 이러한 문제를 해결

- 레이크하우스는 트랜잭션 스토리지 레이어를 맨 위에 추가하는 방법

- 데이터 웨어하우스와 유사한 데이터 구조 및 데이터 관리 기능을 사용하지만 대신 클라우드 데이터 레이크에서 직접 실행하는 방법

- 레이크하우스 사용 시 기존 분석, 데이터 과학 및 기계 학습이 모두 개방형 형식으로 동일한 시스템에 공존 가능

데이터 레이크하우스의 장점

1. 쿼리 엔진이 데이터 레이크에 직접 연결되기 때문에 단순한 ETL(추출, 전송, 로드) 작업이 제거됨

2. 다중 툴을 사용하여 다중 플랫폼에서 데이터를 관리하는 대신 단일 툴로 데이터를 처리하여 데이터 중복성을 줄임

3. 다중 BI  및 분석 툴에 대한 직접 연결을 지원함

4. 민감 데이터를 한 데이터 풀에서 다른 풀로 이동할 필요가 없이 한 지점에서 관리할 수 있어 데이터 거버넌스가 간소화됨

5. 개체 스토리지를 사용하면 한 위치에서 데이터 저장이 가능하여 비용 절감 효과가 있음

레이크하우스 아키텍처 기본 계층

- 레이크하우스 플랫폼은 스토리지 계층(데이터 레이크)으로의 데이터 처리를 관리함

- 처리 계층은 데이터를 데이터 웨어하우스에 로드하거나 독점 형식으로 전환할 필요 없이 다양한 툴을 사용하여 스토리지 계층에서 데이터를 직접 쿼리할 수 있음

- 데이터는 BI 애플리케이션뿐만 아니라 AI 및 ML 툴에서 사용 가능

DataBricks 뭘까?

- Databricks는 엔터프라이즈급 데이터, 분석 및 AI 솔루션을 대규모로 빌드, 배포, 공유를 위한 통합된 개방형 분석 플랫폼임

- Databricks Data Intelligence 플랫폼은 클라우드 계정의 클라우드 스토리지 및 보안과 통합되고 사용자를 대신하여 클라우드 인프라를 관리하고 배포함

Data Intelligence 플랫폼 작동 원리!

- Azure Databricks는 데이터 레이크하우스와 함께 생성 AI를 사용하여 데이터의 고유한 의미 체계를 이해함

- 그 후 성능을 자동으로 최적화하고 비즈니스 요구 사항에 맞게 인프라를 관리함

- 자연어 처리는 비즈니스의 언어를 학습하므로 사용자 고유의 단어로 질문을 하여 데이터를 검색할 수 있음

- 데이터 및 AI 애플리케이션은 거버넌스(체계) 및 보안에 의존할 수 있음. 데이터 개인 정보 보호 및 IP 제어를 손상시키지 않고 OpenAI와 같은 API를 통합할 수 있음

Azure Databricks 작업 영역

  • 데이터 처리 예약 및 관리, 특히 ETL
  • 대시보드 및 시각화 생성
  • 보안, 거버넌스, 고가용성 및 재해 복구 관리
  • 데이터 검색, 주석 및 탐색
  • ML(기계학습) 모델링, 추적 및 모델 서비스
  • 생성 AI 솔루션

Delta Lake가 궁금해요. (레이크 하우스의 큰 틀 안에서 동작하는 아키텍처)

- Delta Lake는 데이터 레이크에 안정성을 제공하는 오픈소스 스토리지 계층

- ACID(원, 일, 고, 지) 트랜잭션을 제공하고, 확장 가능한 메타데이터를 처리하고, 스트리밍 및 일괄 데이터 처리를 통합함

- Delta Lake는 기존 데이터 레이크를 기반으로 하여 실행되며 Apache Spark API와 완벽하게 호환됨

 

메달리온 아키텍처

- 레이크하우스에 논리적으로 데이터를 정리하는 데 사용하는 데이터 설계 패턴

- 데이터가 아키텍처의 각 레이어를 통과하는 동안 (브 -> 실 -> 골) 데이터의 구조와 품질을 증분적, 점진적으로 개선

 

Bronze

- Raw 데이터가 Data Lake Storage에 적재됨.

- 데이터는 Raw 형식으로 가져와서 처리를 위해 개방형 트랜잭션 Delta Lake 형식으로 변환

 

Silver

- Bronze의 Raw 데이터를 ETL 및 스트림 처리 작업을 수행

- 데이터를 Silver 큐레이팅 데이터 세트로 필터링, 정리, 변환, 조인, 집계 처리함

- 머신러닝을 지원하며, 데이터 엔지니어, 데이터 사이언티스트가 활용

 

Gold

- Silver 에서 분석결과를 기준으로 테이블에는 분석과 보고에 사용할 수 있는 풍부한 데이터가 포함

- 고객 분석, 제품 품질 분석, 재고 분석, 고객 세그멘테이션, 제품 추천, 마케팅/영업 분석 등의 비즈니스 레벨의 데이터를 적재