-
데이터 레이크하우스 아키텍처개발지식 아카이브/Data - ETC 2024. 12. 10. 16:33
데이터 레이크하우스 아키텍처를 이해하려면 먼저 데이터 레이크, 데이터 웨어하우스에 대해서도 알아야한다.
데이터 레이크 vs 데이터 웨어하우스 vs 데이터 레이크하우스
데이터 레이크와 데이터 웨어하우스의 장점을 결합한 것이 발전된 방향의 데이터 레이크하우스!!
ACID 트랜잭션, 오픈 포맷 기반, 저렴한 운영 비용...
데이터 레이크
기술 스택
- 저장소:
- Amazon S3, Azure Data Lake Storage (ADLS), Google Cloud Storage (GCS).
- 온프레미스 환경에서는 Hadoop Distributed File System (HDFS) 사용.
- 파일 포맷:
- Apache Parquet, ORC, Avro (열지향 포맷 추천).
- 데이터 처리:
- Apache Spark, Apache Flink, Presto를 활용해 대규모 데이터 처리.
- 메타데이터 관리:
- Apache Hive Metastore 또는 AWS Glue Catalog.
데이터 웨어하우스
기술 스택
- 데이터베이스:
- Amazon Redshift, Google BigQuery, Snowflake (클라우드 기반).
- 온프레미스에서는 Oracle Exadata, Teradata 등 전통적 SAN, NAS, 디스크 스토리지
- ETL 도구:
- Apache Nifi, Talend, Informatica, AWS Glue를 활용해 데이터 정제 및 적재.
- BI 도구:
- Tableau, Power BI, Looker를 통해 데이터 시각화.
데이터 레이크하우스
데이터 레이크하우스는 데이터 웨어하우스에서 가능한 ACID 트랜잭션등의 고급 기능을 데이터 레이크의 저렴한 스토리지에서 구현할 수 있게 한 것이다.
기술 스택
- 저장소:
- 데이터 레이크
- 오픈 테이블 포맷:
- Apache Iceberg, Delta Lake, 또는 Apache Hudi.
"Open Table Format"은 데이터 레이크 위에 데이터베이스와 유사한 테이블 추상화를 제공하기 위해 등장한 개념입니다. 전통적인 관계형 데이터베이스는 메타데이터와 ACID 트랜잭션, 스키마 관리 등의 기능을 내장하고 있지만, 데이터 레이크(예: S3, HDFS)는 단순 파일 저장소에 불과합니다. 그래서 데이터 레이크에 데이터 웨어하우스와 같은 기능을 부여하기 위해 테이블 포맷이 개발되었습니다.
Apache Iceberg, Delta Lake, Apache Hudi 같은 오픈 소스 프로젝트는 특정 벤더에 종속되지 않는 표준을 만들기 위해 개발되었습니다. 이러한 오픈 테이블 포맷은 다양한 엔진(Spark, Flink, Presto 등)에서 동일한 테이블을 읽고 쓸 수 있게 하여 생태계 간 상호 운용성을 높입니다.- 데이터 처리 및 분석:
- Apache Spark, Dremio, Databricks.
- 데이터 관리 도구:
- Nessie, AWS Glue Catalog를 통한 카탈로그 관리.
- 스트리밍:
- Apache Kafka, Flink를 통해 실시간 데이터 처리.
도입 과정
- 데이터 통합:
- 데이터 레이크의 데이터를 Iceberg와 같은 오픈 테이블 포맷*으로 관리.
- ACID 트랜잭션을 지원하여 데이터 일관성 확보.
- 실시간 분석:
- Kafka와 Flink를 사용해 실시간 스트리밍 데이터 처리.
- Dremio 또는 Databricks에서 ML/AI 워크로드 실행.
- 시간여행 및 버전 관리:
- Iceberg의 시간여행 기능을 통해 과거 데이터를 복원하거나 분석.
- 테이블 스냅샷을 사용해 데이터 변경 내역을 관리.
- BI 및 ML 통합:
- Looker로 BI 보고서 작성, Spark MLlib으로 예측 분석 수행.
3가지 아키텍처를 운영하는 사례 (각각)
1. IoT 센서 데이터 처리 (데이터 레이크)
- 센서로부터 수집한 대규모 로그 데이터를 S3에 저장.
- Apache Spark를 사용하여 비정형 데이터를 정제.
2. 판매 데이터 분석 (데이터 웨어하우스)
- 데이터 레이크에서 정제한 매출 데이터를 Snowflake로 적재.
- BI 도구(Tableau)로 대시보드 생성.
3. 고객 행동 분석 및 예측 (데이터 레이크하우스)
- Kafka를 사용하여 실시간 이벤트 스트리밍으로 레코드를 S3에 저장
- Iceberg 오픈 테이블 포맷으로 고객 데이터를 관리하며 실시간 업데이트 반영.
- Spark MLlib으로 고객 행동을 예측하는 머신러닝 모델 실행.
기술 통합 전략
- 데이터 레이크를 기본 저장소로 활용하여 모든 데이터를 수집.
- 중요한 분석용 데이터는 데이터 웨어하우스에 적재하여 고성능 쿼리 수행.
- 고급 분석과 실시간 처리를 위해 데이터 레이크하우스를 병행 운영.
Reference.
https://www.skcc.co.kr/insight/trend/2696
https://www.skcc.co.kr/insight/trend/2696
www.skcc.co.kr
http://www.itdaily.kr/news/articleView.html?idxno=208876
[기획특집] ‘창고’와 ‘호수’를 넘어서는 데이터 레이크하우스 - 아이티데일리
[아이티데일리] 전 세계 데이터 산업계가 새로운 변화를 맞이하고 있다. 대부분의 기업들은 데이터 웨어하우스(DW, Data Warehouse)와 데이터 레이크(Data Lake)를 이용해 자사의 데이터들을 관리해왔지
www.itdaily.kr
& ChatGPT
'개발지식 아카이브 > Data - ETC' 카테고리의 다른 글
[metastore] 하이브 메타스토어 VS 유니티 메타스토어 비교하기 (0) 2025.02.12 [Hive] 하이브 핵심정리 (1) 2023.10.19 Zeppelin 과 Notebook 비교, 어떤 것을 고를까? (1) 2023.05.18 [Streamlit] 설치 단계에서 발생한 이슈와 해결방법 정리 (0) 2023.04.16 [R 회귀분석 예제] 야구선수 연봉에 영향을 미치는 요인 (Linear Regression) (3) 2020.06.21 - 저장소: