Snowflakeの意外なデメリット4つと解決方法

Snowflakeの意外なデメリット4つと解決方法

 

こんにちは、双日テックイノベーションの鈴木です。

ビジネス強化のためにデータ活用基盤を整備、刷新する企業様が増えています。
その中で、高パフォーマンスなデータウェアハウスを簡単に使い始められると謳われるSnowflakeの検討を進めている担当者もいらっしゃるのではないでしょうか?

Snowflakeは、気軽に扱え、少量のデータセットについて優秀なパフォーマンスを発揮するという特徴を持っています。しかし一方で、大量のデータを扱う際にはパフォーマンスやコストに課題が出てくる、など注意点もあります。

ですので、全社的に導入するような「中長期的に活用する基盤にしたい」とお考えの際は、Snowflakeがベストな選択なのか、1度振り返った方が良いかもしれません。

そこで本日は、Snowflakeに向く企業の特長と、注意すべきデメリットについてご紹介いたします。

 


こんな方におススメ

  • Oracleなどの刷新をSnowflakeで検討している
  • メリットデメリットをきちんと把握し、自社にマッチするデータ活用基盤を導入したい


1. Snowflakeがマッチする企業

まず前提として「データ活用をどこまで考えるか」によって選択すべきサービスは異なります。
それぞれのプロダクトの思想が異なるため、マッチする企業像が異なっているのです。

たとえば、ただ単純なOracleのリプレイスであればオンプレDWH→Snowflakeという方法が最もシンプルかもしれません。DWHからDWHへの移行ですので、考え方や取扱い方法が大きく変化せず比較的簡単に実現できるためです。
しかし、今まさに時代の潮流に乗っているOpenAIやChatGPTなどAIの活用も検討に入っているのであれば、Snowflakeがベストな選択とは限りません。

Snowflakeにはどのような企業にマッチするのか、下記に特長を整理しますので自社に当てはめてみてご覧ください。

★Snowflakeがマッチする企業

  1. 気軽にデータ整理を始めたい
  2. データ活用だけに集中したい(サービス化することである程度コストがかかることは了承している)

SaaSであるSnowflakeは、ミドルウェアまで面倒見なくて良く、ある程度機能が揃っています。そのため気軽にデータ活用を始めたいという企業様にはマッチするサービスです。
さらに、SaaSで提供されますので、データ活用に特化したUIが実装されている等、シンプルで使い勝手が良いのも特徴です。

そのため、上記の2点をお考えの場合は使いやすいサービスです。

 

2. Snowflakeのデメリット

では、どのような点に注意しなければならないのか整理していきます。

2.1 大量のデータ利用時にコスト増加&パフォーマンス劣化の可能性

Snowflakeは、コストを抑えつつ高いパフォーマンスを提供すると謳われていますが、それはデータ量によって変化します。
Snowflakeは小規模なデータセットにおいては優れたサービスを提供していますが、シングルノードのみのサポートであるため、大量データを扱う際にはパフォーマンス劣化に注意が必要なのです。

海外のブログですが、パフォーマンス検証の結果DatabricksはSnowflake よりも2.5 倍高速で動作するという報告もあります。
Snowflake Claims Similar PricePerformance to Databricks, but Not So Fast!
引用元:Snowflake Claims Similar Price/Performance to Databricks, but Not So Fast!

 

どのくらいの容量からパフォーマンスに差が出てくるかというと、「50GB」が1つのポイントになりそうです。
こちらも海外のブログですが、50GBを超えるとSnowflakeが適さないという調査結果があります。
参考:Databricks vs Snowflake – December 2022 Take

 

また、Snowflakeは拡張時にクラスターごとにスケールするため、不要なリソースが発生するという課題もあります。その結果、スケールするたびに指数関数的にコストが増加する傾向があるのです。

実際、3TB以上のデータセットになると、Databricksに比べてコストメリットが出にくいという結果が報告されています。

データ量に応じたコスト増加比較

データ活用のプロジェクトで原価が増えてしまうと、損益分岐点(=そのプロジェクトが成功するために達成しないといけないハードル)が変わりますので、費用対効果を慎重に検討する必要があります。

 

2.2 対応データソースが限定的

Snowflakeはデータウェアハウスですので、非構造化データを取り扱うことができません。
対応しているデータソースは下記です。

  • CSV
  • TSV
  • JSON
  • Avro
  • ORC
  • Parquet
  • XML

 

2.3 AIやMachine Lerning(ML)は別基盤になる

AIや機械学習の活用には、データ収集からデータ処理・変換、特徴量モデルのインプット、モデル作成、スコアリング、そしてリアルタイム処理といった工程が必要です。しかし、この点でいくつかの課題が存在します。

まず、前述した通り、Snowflakeは非構造化データの取り扱いには向いていません。非構造化データを活用する場合には、多くの場合別の手段やプラットフォームを考える必要が出てきます。

さらに、Snowflakeはデータ量が増えるとモデル作成が困難になります。また、Snowflakeはデータウェアハウス(DWH)であるためバッチ処理が基本なため、リアルタイム処理には対応していません。

これにより、Snowflakeを利用しつつAI活用を検討する際には、他のソリューションとの組み合わせが必要になります。例えば、DataRobotなどのツールです。
しかしこれにはライセンス費用などの金額面、セキュリティポリシーを管理するツールが増えるなど運用工数が増えることを考慮しなければなりません。

 

2.4 ベンダーロックインされる

Snowflakeでは、データはコピーされた形で保管されています。データにアクセスするためには、Snowflakeのコンピューティングリソースを利用する必要があります。そのため、データのやり取りにはコストが発生することに留意する必要があります。

さらに、Snowflakeではデータの共有が可能ですが、その共有はSnowflake同士でのみ行うことができます。他のプラットフォームやシステムとの間でのデータの共有は制限されています。

Snowflakeはベンダーロックインされる

データへのアクセスやデータの共有を円滑に行うためには、外部にストレージを構築することが一つの解決策となります。しかし、このアプローチではデータサイロの問題が発生する可能性があります。データが分散してしまい、全体の可視性や統合性が損なわれる可能性があるということです。

この構成によって本当に実現したい目標や要件を満たすことができるのか、再評価や検討を行うことが重要です。

 

3. 解決策としてのDatabricks

Databricksは、上記のデメリットを持たないクラウドデータ活用サービスです。
その特長より、海外ではSnowflakeを導入したけれど上記の様な課題が出てきたことでDatabricksに移管した、という企業様もいらっしゃいます。

ここまでお読みいただき、Snowflakeでは不足点が出るかもしれない、、とお考えの場合はぜひ注目してみてください。

 

\ 特長、コスト、類似製品との比較をまとめています /
Azure Databricks
概要資料

 

下記にDatabricksのメリットを紹介します。

 

3.1 大量のデータを扱っても高パフォーマンス&適正なコスト

Databricksは、処理系エンジンのPhotonとデルタレイクを活用したアーキテクチャを採用しています。このアーキテクチャは、ETL(Extract, Transform, Load)プロセスと分析クエリの両方を効率化することを目的としており、データ量が大きくてもパフォーマンスの劣化が少ないという特徴があります。

Databricksのアーキテクチャでは、データ処理量に応じてクラスター内の仮想マシン(VM)の数をスケーリングすることができます。これにより、不要なリソースが発生しにくく、無駄なコストがかかりにくいです。拡張時に必要なリソースを柔軟に調整することで、効率的なデータ処理を実現します。

さらに、データアクセス時にはデータレイクを参照するため、データのローディングが発生しません。このため、データ通信費用を抑えることができます。データが既にデータレイクに格納されているため、必要なデータに対して直接アクセスできるためです。

Databricksのアーキテクチャは、パフォーマンスの向上とコストの削減に寄与します。大量のデータでも効率的な処理が可能であり、データ通信費用の節約にもつながります。これにより、データ活用プロジェクトの成果を最大化することができます。

 

3.2 対応データソースが豊富

Databricksは構造化データ、半構造化データはもちろん非構造化データも取り扱うことができます。対応データフォーマットは下記です。

  • Delta Lake
  • Parquet
  • ORC
  • JSON
  • CSV
  • Avro
  • Text
  • Binary
  • 画像
  • XML
  • Hiveテーブル
  • 圧縮ファイル
  • LZO

 

3.3 BI、AI、Machine Learningを1つの基盤で活用できる

Databricksは、さまざまな言語に対応しており、RやPython、SQLなどを利用することができます。
前述の通り、AI活用に必須な非構造化データの取り扱いにも対応しています。

また、マルチノードな為小規模なプロジェクトから大規模なデータ処理にもスケーラブルに対応可能です。

Databricksの最大の強みは、Spark処理が得意な点です。Sparkを活用することで、大規模なデータセットの処理やストリーミングデータのリアルタイム分析が可能となります。

さらに、Databricksの構造により、データソースからデータを受け取り、変換し、スコアリングするといった処理が容易に行えます。これにより、実践的なデータ処理や分析を実現することができます。

その他概要、特長、費用など詳細がまとまった資料もございます。
ご興味お持ちいただいた方はぜひご覧ください。
Azure Databricks
概要資料をダウンロードする

 

4. まとめ

上記の内容を項目に分けて表にまとめてみました。

Snowflake Databricks
マッチする企業像
  • 気軽にデータ整理を始めたい
  • コストがかかっても良いので、データ活用だけに集中したい
  • データの民主化やDX達成など、広いゴールを見据えているプロジェクトがある
  • ある程度のエンジニアリングが発生しても問題ない
コスト 小規模のデータにおいてリーズナブル 大量のデータを扱う際にコストを抑えられる
運用管理性 SaaSなため使いやすい、導入も簡単にできる ある程度の初期設定が必要で開始までのハードルが高い
対応データセット
  • 半構造化データ
  • 構造化データ
  • 非構造化データ
  • 半構造化データ
  • 構造化データ
AI対応
他ソリューションとの連携が必要

 

これまでの内容について少しでもご興味いただいた方へ、
DatabricksそのものやDatabricksとSnowflakeの違いがもっと詳しくわかるセミナーを企画しております。
ぜひお申込みください。


DWHのモダナイズセミナー(Microsoft主催 / 6月22日 12:00-13:00)

お申し込みはコチラ→https://aka.ms/Azure_Nisshoele_Analytics_20230622

データブリックス・ジャパン株式会社様をお迎えし、データブリックスが提供する次世代のデータ分析基盤である “レイクハウス・プラットフォーム” が、どのようにレガシーな DWH の課題を解決しコスト削減を実現するのか、事例を交えてご紹介します。
また、セミナーにご参加頂くことで、以下のことをご理解いただけます。

  • データ基盤のトレンドと Microsoft Azure の最新動向
  •  Microsoft Azure のデータ分析サービスの概要と違いを理解し、自社に最適なサービスを知る
  • 既存データ基盤から Azure に移行をする、移行プロジェクトの進め方

ぜひこの機会にご参加ください。


 クラウドDWHは万能か?~ 意外なデメリットと解決策としてのDatabricksを解説 ~
(双日テックイノベーション主催 / 7月14日、21日、28日 16:00-17:00)

お申し込みはコチラ→https://contacts.sojitz-ti.com/DataAI_Seminar_DWH_vs_DLH_202307.html

東京、名古屋、大阪にて開催します。
より詳細にそれぞれの製品を比較する予定です。リアルタイムにご質問していただけますので、ちょっとした疑問も解消していただけるかと思います。


今後も皆さまの疑問を解消するような情報を発信できればと思いますので、どうぞよろしくお願いいたします!

この記事を書いた人

鈴木梨玖
マーケティング担当の鈴木です。
VDIやDataAI製品を中心に、セミナー、ブログ、メルマガなどで情報を発信しています!
よろしくお願いいたします_(._.)_