Snowflakeは、クラウドベースのSaaSデータウェアハウスです。データの格納、処理、分析をすべてクラウド上で行うことができ、最近話題になっています。
しかし、そんなことは AWS や Google Cloud、Azure といった3大クラウドでもできます。では、なぜ人気なのでしょうか。
今回の記事は Snowflake の人気の理由と、利用する前に知っておきたいポイントをまとめました。
目次
Snowflakeの類似サービスとの比較
Snowflakeの類似サービスとして、3大クラウド内の DHW である Amazon Redshift、Google BigQuery、Azure Synapse Analytics と、クラウド DWH 特化の Databricks を挙げてみました。
これらのサービスとの比較において、Snowflake の差別化ポイントは以下のとおりです。
機能 | Snowflake | Databricks | Amazon Redshift | Google BigQuery | Azure Synapse Analytics |
---|---|---|---|---|---|
ストレージと計算の分離 | あり | あり | あり | あり | あり |
列指向データストア | あり | あり | あり | あり | あり |
インメモリキャッシュ | あり | あり | なし | あり | あり |
データレイクとの統合 | あり | あり | あり | あり | あり |
AI/機械学習のサポート | あり | あり | あり | あり | あり |
マルチクラウドサポート | あり | あり | なし | あり | あり |
コスト | 中間 | 高め | 低め | 低め | 中間 |
パフォーマンス | 優秀 | 優秀 | 良好 | 優秀 | 優秀 |
機能性 | 豊富 | 豊富 | 豊富 | 豊富 | 豊富 |
重点をおいている機能 | データ格納 データ共有 | データ処理 データ分析 | データ処理 データ分析 | データ処理 データ分析 | データ処理 データ分析 |
マーケットプレイス | あり | あり | あり | あり | あり |
シェアのしやすさ | 優秀 | 優秀 | 良好 | 良好 | 良好 |
扱えるデータ種 | 構造化データ 半構造化データ | 構造化データ 半構造化データ 非構造化データ | 構造化データ 半構造化データ 非構造化データ | 構造化データ 半構造化データ 非構造化データ | 構造化データ 半構造化データ 非構造化データ |
いずれのサービスでも、データの格納、共有、分析、処理は可能です。
ただ、やりやすさやコスパの違いがありました。
Snowflake の最大の差別化ポイントと弱み
結論から書くと、Snowflake の最大の差別化ポイントは、企業間での安全なデータ共有のしやすさです。弱みは、データ共有の先にある分析やAI活用です。
扱えるデータ種に非構造化データ(テキスト、IoTセンサーのデータ、画像、音声など)が含まれていないのはAI活用の上では大きなデメリットですが、一方で、構造化データしか扱わないのであれば、Snowflake はうってつけだと思います。日本の企業の多くは非構造化データどころか構造化データをAIに活かす、というのも模索中な印象なので、その辺が Snowflake の人気の秘訣なのかなという気がします。
参照:https://docs.snowflake.com/en/user-guide/data-sharing-intro
もう少し差別化ポイントの「企業間での安全なデータ共有のしやすさ」について補足します。
3大クラウドの DWH は、セキュリティが堅牢な反面、管理は各アカウントに閉じた設計になっており、企業間(アカウント間)のデータのやりとりは煩雑で、手順も難しいと感じます。
その点、Snowflake はデータ共有が非常にシンプルです。
プロバイダ(データ提供者)がデータを共有すると、コンシューマー(データ受信者)側で読み取り専用データベースが作成されます。つまり、データはコピーや転送されることなく、Snowflake 上でクエリすることで参照可能になります。
コンシューマ側はデータを保持する必要がないためストレージ費用を抑えることができます。
Snowflake のプロバイダ側(データ提供者)の安心材料とは?
手軽にデータ共有ができるとういうことで、次に気になるのは安全面ですが、
まず、こっそりクエリ結果をCSVダウンロードされちゃうのでは? という誰もが最初に思い至りそうな不安については、クエリ結果のCSVダウンロード(アンロード)は署名付きURLから行うよう制限がかかっているというのが一つの安心材料になりそうです。
また、プロバイダ側は使用状況メトリクスを確認できるし、いつでも簡単に共有停止にすることができます。
さらに、マスキングポリシーでデータベース内のオブジェクト(メールアドレスや個人情報など)を列単位や行単位でマスキングすることもできます。
ここまで聞くと、結構安心できますね。
Snowflake を実際使ってみて気になったポイント5つ
①Snowflakeの利用には、AWS、Azure、Google Cloud Platformいずれかのクラウドアカウントが必要です。
②会社単体で使う場合は、いろんなパブリッククラウドプラットフォームに散らばったデータをまとめて分析したいときは使えそう。ただし、コスパが良いのは50GBまでらしく、それ以上のデータ量ならDatabricksを使った方が良さそう。
③Snowflake内部にデータをロードする方法のほかに、外部ストレージにおいたまま参照することもできるが、参照時にSnowflakeのコンピューティングリソースを利用する必要があり、頻繁に参照する場合はコピーした方が安い。
④本格的にAI活用、機械学習をやろうとすると、結局3大クラウドに戻るか、DataRobotのようなサードパーティのAIサービスを使うことになり、手間もコストも増える。
⑤データのロードや統合も、SnowSQLというのをローカルにインストールしてコマンドラインで操作しなければならず、利用には少なくともDB周りの知識とSQLが書けるくらいの知識が必要。
SnowSQLによるCSVアップロードの例↓
こんな感じでアップロードが完了すると、Snowflakeの画面↓(ブラウザ)でデータを確認できるようになります。アップロードさえできてしまえば、Snowflake上でクエリを書けばデータを検索することができるので、あまり人を選ばず使いやすいのかなという印象です。
まとめ
- Snowflakeの人気の秘訣は、グループ、提携先など企業間でのデータ共有のしやすさ
- Snowflakeでできることは他の類似サービスでもできるが、やりやすさとコスパで差別化している
- Snowflakeはデータの格納、共有に特化したDWH。その先の分析やAI活用、機械学習までやろうとすると逆にコスパが下がる可能性がある
API ARIMA AutoML Bard BigQuery Bing ChatGPT Cloud Endpoints Cloud Storage DWH EBPM GAS Generative AI Google Apps Script Google Cloud Google Form Google Workspace IT組織 Outlook PaLM PDF Python ReportLab selenium Statsmodels STL VertexAI Vertex Forecast スクラッチ セミナー ソトミル トレンド分析 トレーニング バッチ予測 世界は女性とデジタルが救う 女性活躍 技術 時系列データ分析 業務効率化 機械学習 特徴量エンジニアリング 生成AI 自動化 評価指標 需要予測