데이터 웨어하우스

데이터 웨어하우스의 옵션들

_알파카 2024. 4. 16. 16:44
728x90

Iceberg를 제외하고는 모두 SQL을 지원하는 빅데이터 기반의 데이터베이스! 

 

1. AWS Redshift

- 2012년에 시작된 AWS 기반의 데이터 웨어하우스

- 최대 2PB 까지의 데이터 처리 가능

- Postgresql의 기능 제공 및 Python으로 기능 확장 가능

- 초기에는 고정비용 모델이었으나, 가변비용 모델도 지원(Redshift Serverless)

- 온디맨드 가격 외에도 약정 형태의 예약 옵션도 지원

- CSV, JSON, Avro, Parquet 등과 같은 다양한 데이터 포맷 지원

* AWS의 일부이므로, AWS 내의 다른 서비스들과 연동이 쉬움

(S3, DynamoDB, SageMaker 등)

- 배치 데이터 중심이지만 실시간 데이터 처리 지원

- 웹 콘솔, command 명령어, API 등 모두 지원

 

2. Snowflake

- 클라우드 기반 데이터웨어하우스로 시작

- 데이터 판매를 통한 매출을 가능하게 해주는 Data Sharing/Marketplace 제공

- ETL과 다양한 데이터 통합 기능 제공

- SQL 기반으로 빅데이터 저장, 처리, 분석 가능 (비구조화 데이터 및 머신러닝 기능제공)

- 다양한 포맷 지원

- 클라우드와 관계없이 지원됨. (모든 클라우드와 연동 가능)

- 배치 데이터 중심이지만 실시간 데이터 처리 지원

- 웹 콘솔, command 명령어, API 등 모두 지원

 

3. Google Cloud BigQuery

- 구글 클라우드의 대표적인 데이터 웨어하우스 서비스

- 다른 SQL에 비해 더 강력한 BigQuery SQL 이용 (Nested fields, repeated fields 지원)

- 가변 비용과 고정 비용 옵션 지원

- 다양한 포맷 지원

- 구글 클라우드 내의 다른 서비스들과 연동이 쉬움

- 배치 데이터 중심이지만 실시간 데이터 처리 지원

- 웹 콘솔, command 명령어, API 등 모두 지원

 

4. Apache Hive

- Facebook이 2008년에 시작한 아파치 오픈소스 프로젝트

- 하둡 기반으로 동작하는 SQL 기반 데이터 웨어하우스 서비스

-> HiveQL 이라 부르는 SQL 지원

- MapReduce 위에서 동작하는 버전과 Apache Tez를 실행 엔진으로 동작하는 버전 존재

- 하둡 기반 오픈소스들과 연동이 쉬움(Spark, Hbase)

- 다양한 포맷 지원

- 배치 빅데이터 프로세싱 시스템

-> 빠른 처리속도보다는 처리할 수 있는 데이터 양이 크기에 최적화

- 웹 UI와 커맨드라인 두 가지 지원

- Spark에 밀리는 분위기..

 

5. Apache Presto

- Facebook이 2013년에 시작한 아파치 오픈소스 프로젝트

- Hive에 비해 큰 데이터보다는 빠른 응답 속도에 집중(메모리 기반)

-> Hive와 Presto는 굉장히 유사하며, 이 두개는 서로 보완해주는 관계임

 

6. Apache Iceberg

- 스토리지

- Netflix가 2018년에 시작한 아파치 오픈소스 프로젝트. 데이터 웨어하우스 기술이 아님!

=> 굉장히 유연하고 강력한 데이터 파일 포맷이라고 보면 됨

=> 이 파일 포맷을 사용해 데이터 레이크를 구현하는 일이 늘어남 (Iceberg + Spark)

- 대용량 SCD(Slowly-Changing Datasets) 데이터를 다룰 수 있는 테이블 포맷

-> 모든 클라우스 스토리지 위에서 동작

-> ACID 트랜잭션과 과거버전 롤백 및 기록 확인 가능

-> 특정 파일의 포맷 변화 트랙킹 가능 (스키마 진화)

- 자바와 파이썬 API 지원

- Spark, Flink, Hive, Hudi 등의 다른 Apache 시스템과 연동 가능

 

7. Apache Spark

- 데이터 웨어하우스라기 보단.. 스토리지의 데이터를 읽어서 프로세싱 하는 엔진에 가까움

- UC 버클리 AMPLab이 2013년에 시작한 아파치 오픈소스 프로젝트

-> 첫 목표: 파이썬의 Pandas 처럼 빅데이터를 처리하자! 

- 빅데이터 처리 관련 종합 선물 세트! 

-> 배치처리(API/SQL), 실시간처리, 그래프처리, 머신러닝 기능 제공

- 다양한 분산처리 시스템 지원 (하둡(YARN, AWS, Google Cloud 등)

- 다양한 파일시스템과 연동 가능 (HDFS, S3, Cassandra, HBase 등)

- 다양한 언어 지원 : 자바, 파이썬, 스칼라, R

728x90