본문 바로가기
Database

Snowflake VS Databricks

by 알 수 없는 사용자 2023. 6. 21.

베하~~ 

수 지 타 산 입니다

오늘은 예고했던대로

스노우플레이크와 데이터브릭스에 대해 공부할게요

팔로팔로팔로미

 


 

 

 

Snowflake ?

멀티 클라우드를 지향하지만 각각의 데이터들은 CSP에 종속되는 현상이 있습니다. 또한, 여러 클라우드 회사의 다양한 리전에서 쌓인 데이터들은 언어도 형태도 다르기에 일치하지 않는 것을 '샤일로 현상' 이라고 하는데요, 이러한 현상을 극복하는 데이터 플랫폼이 스노우플레이크 입니다

 

또한, 우리는 데이터 관련 작업을 위해 하나의 데이터를 여러 컴퓨터에서 사용하는데 이러한 경우에는 쿼리량이 급증하면 속도가 느려지는 문제가 발생합니다. 하지만 스노우플레이크는 해당 데이터를 가상의 컴퓨터에 올려 사용하므로 병목현상 없이 처리할 수 있습니다. 데이터 자체를 함께 공유하여 사용한다는 의미는 데이터를 이용하기 위해 불필요하게 복제할 필요가 없다는 말입니다. 별도의 저장소가 아닌 가상의 공간에서 데이터를 함께 공유할 수 있다는건 국적, 장소에 관계없이 누구나 동일한 데이터를 이용할 수 있다는 의미이기도 합니다.

 

합리적인 비용도 매력적인 요소입니다. 스토리지와 데이터 처리 가격을 분류해, 데이터 처리 할 때만 비용을 받고 스토리지는 월 단위로 비용을 받습니다. 스토리지의 경우 TB 단위로 가격을 부과 하는데요. 데이터 처리 비용에 비하면 전체의 5~10% 정도 밖에 되지 않습니다.

 

 

 

특징

1. 통합 스토리지  : 여러 CSP 사의 데이터를 한 곳에 모아 활용할 수 있습니다

2. 가상 데이터 웨어하우스 : 각 데이터의 크기와 종류에 맞춰 데이터 처리를 전담합니다. 

3. 데이터 확장에 별도의 저장공간 불필요 : 스노우플레이크에서 데이터 복제를 할 때는 메타데이터를 복제합니다. 100gb 데이터를 복제할 때 추가로 100gb 저장 공간이 필요했지만 메타데이터를 복제한다는 것은 이전처럼 저장 공간이 불필요하다는 의미입니다.

 

 


 

 

Databricks ?

apache spark 를 기반으로 구동되는 데이터 플랫폼입니다. 여러 CSP의 데이터를 모아 정형/비정형/반정형의 데이터가 모두 모인 데이터 레이크를 구성하고, 구조화된 데이터로 구성된 델타 레이크를 제공합니다. 이때 델타엔진(Delta engine)을 통해 델다 레이크의 데이터를 시각화와 데이터 분석에 이용됩니다. DataFrame APIs를 통해 데이터 레이크의 데이터를 머신러닝과 데이터 사이언스에 데이터를 활용하게 됩니다.  

 

여러 CSP 사의 데이터를 가져와서 처리할 수 있는 것은 스노우플레이크와 데이터브릭스가 동일합니다. 

 

비용은 가상머신의 인스턴스, 데이터 스토리지 및 데이터 전송을 기준으로 요금을 청구 합니다.

 


 

Snowflakes  VS Databricks

 

1. 데이터브릭스는 스파크를 기반으로 고성능의 데이터 처리 및 기계 학습 작업에 최적화 되어 있습니다. 이에 비해 스노우플레이크 데이터 웨어하우징에 중점을 두고 있어 쿼리를 빠르게 실행하고 분석하는데 중점을 두고 있다고 볼 수 있습니다. 

 

2. 스노우플레이크는 SQL 및 일반적인 데이터 분석에 적합하고, 데이터 브릭스는 스파크 엔진으로 인해 스트리밍, 머신러닝, AI, 데이터 과학 워크로드에 더 적합합니다.

 

3. 데이터브릭스는 인스턴스나 스토리지 및 데이터 전송을 기준으로 비용이 청구된다면, 스노우플레이크는 저장된 데이터의 양, 컴퓨팅 리소스 및 수집된 데이터의 양에 따라 비용이 청구됩니다. 

 

4. 스노우플레이크는 데이터 레이크와 구조화된 데이터가 저장되는 공간이 나뉘어지는 2tier 형태를 가지고, 데이터 브릭스는 데이터레이크 내에서 델타레이크가 함께 존재하는 구조입니다. 이에 대한 내용은 아래의 두가지 사진을 보신다면 이해가 빠를 것 같습니다!

 

 

 

 

 


 

여기까지 데이터브릭스와 스노우플레이크에 대해 알아봤습니다.

데이터 플랫폼의 양대산맥으로 이미 해외에서는 뜨거운 이슈인데요

두개의 구조와 차이를 잘 알고

알맞은 제품을 사용하는게 중요하겠습니다

그럼 다음 주에도 만나요

 

 

'Database' 카테고리의 다른 글

SQL과 기초 문법  (0) 2023.06.22
Redis를 활용한 Celery Executor 설정  (0) 2023.06.21
[데이터 레이크하우스] Data Lakehouse  (0) 2023.06.19
Composer란  (0) 2023.06.08
[Airflow] Airflow 설치 및 DAG 생성하기  (0) 2023.06.07

댓글