728x90
snowflake
- 다양한 타입의 데이터를 지원한다(json, parquet, XML 등)
- 매우 유연하고 확장성있으며, 많은 수의 유저들을 수용할 수 있다.
- 선지불요금제 혹은 사용시간에 따라서 비용을 지불하는 서비스가 있다.
- Snowflake는 컴퓨팅 성능을 스토리지에서 분리하여 동시 워크로드를 허용하여 사용자가 한 번에 여러 쿼리를 실행할 수 있도록 한다.
- 모든 작업이 개별적으로 수행되므로 작업 부하가 서로 영향을 미치지 않으므로 성능이 더 빠르다.
- 스토리지 및 컴퓨팅 전원을 별도로 설정할 필요가 없으며 클라우드 제공자가 처리하지만 클라우드 서비스 제공자의 선택이 필요하다.
- 유지 관리의 경우 컴퓨팅 리소스의 자동 및 신속한 프로비저닝을 포함하여 거의 모든 작업이 수행되므로 유지 관리 수준이 낮아야 한다.
- 관리의 경우 Snowflake는 모든 작업이 클라우드 제공자에서 발생하므로 서버리스 관리 시스템으로 간주되므로 최종 사용자가 관리할 필요가 거의 없다.
redshift
- aws에서 제공하고 있는 완전 관리형 데이터웨어하우스이다보니 처음 입문해서 사용하기에 용이하다.
- 칼럼기반의 데이터 베이스이고 SQL기반으로 BI툴과 연결하여 사용할 수 있다.
- 빠른 쿼리 속도를 제공하므로 대량의 쿼리를 실행하는 데 최고의 선택이지만 semi-structured 데이터를 사용할 때는 속도가 상당히 느릴 수 있다.
- 스토리지와 컴퓨팅이 분리되어 있지 않기 때문에 적절한 클러스터를 설정해야 하며, Amazon Redshift에서 유지 관리하려면 사용자가 주기적으로 테이블을 정리해주어야 한다. 즉 장기적으로는 리소스 및 컴퓨팅 관리에 효율적이지 않다.
Bigquery
- 구글에서 제공하는 데이터 웨어하우스이며, 복잡한 집계 쿼리를 실행하기 좋다.
- 쿼리당 비용으로 청구된다.
- 스토리지 및 컴퓨팅 노드가 분리되어 있으므로 설정 시 크기 조정이 필요하지 않으므로 서버리스 시스템으로 간주할 수 있다.
- 유지 보수의 경우 최종 사용자로부터 낮은 수준의 유지 보수가 필요히다.
- 워크로드가 급증하는 시나리오에 가장 적합하다. (유휴 시간이 길고 가끔 많은양의 쿼리를 실행하는 경우)
- 쿼리를 캐시하고 인메모리 캐시를 제공하는 중간 캐시를 제공한다. 캐시된 쿼리는 비용이 발생하지 않는다.
e.g.
- 권장 모델: 전자상거래 애플리케이션을 위해 하루에 한번 실행
- 임시보고: 분기별 보고서에 복잡한 쿼리가 있는 경우
- 영업 인텔리전스: 영업 또는 마케팅 팀이 원하는 방식으로 데이터를 분석하여 임시로 수행할 경우
- 기계 학습: 데이터, 소비자 행동에서 새로운 패턴을 발견하는 경우
참고
https://hevodata.com/learn/snowflake-vs-redshift-vs-bigquery/
https://giljae.medium.com/snowflake-bigquery-redshift-%EB%B9%84%EA%B5%90-5c585df450b7
728x90
'DE > Skill' 카테고리의 다른 글
[Apache Spark]Join Strategy(조인 수행 전략/방식) (0) | 2023.02.25 |
---|---|
Apache Sqoop의 등장과 은퇴(feat. Apache Sqoop projects moved to the Apache Attic) (0) | 2022.08.01 |
[Kafka] Kafka 기본 개념 정리 (0) | 2022.03.24 |
[Spark] Spark 기본개념 정리 (0) | 2022.03.24 |
[Database] apache cassandra (0) | 2022.03.23 |