Snowflake

SNOWFLAKE
読み: スノーフレーク

読み: スノーフレーク

Snowflakeとはデータ基盤の要

Snowflakeはクラウドネイティブのデータウェアハウスサービスで、コンピュートとストレージを完全に分離したアーキテクチャを持つ。AWS、Azure、Google Cloudの3大クラウドに対応し、データの保存場所を問わず統一的にクエリを実行できる。AI時代のデータ基盤として、LLMとの連携機能を急速に拡充している。

かんたんに言うと

必要なときだけ計算能力を借りて、必要な分だけ支払う巨大な倉庫である。倉庫の棚とフォークリフトが別々に管理されているため、荷物が増えてもフォークリフトの台数だけ増やせばいい。

使った分だけ課金されるSnowflakeのコンピュートとストレージ分離の意味

従来のデータベースはCPUとディスクが一体だった。データが増えればサーバーごと追加するしかなく、使わない時間帯も稼働し続けてコストを食う。
Snowflakeはストレージ層とコンピュート層を独立させた。データはクラウドのオブジェクトストレージに置かれ、クエリを実行するときだけ「仮想ウェアハウス」と呼ばれる計算リソースが立ち上がる。夜間バッチが終われば自動で停止する。使った秒数だけ課金される。
この分離によって、マーケティング部門と経理部門が同じデータに対してそれぞれ別のウェアハウスでクエリを走らせても、互いのパフォーマンスに干渉しない。部門間の調整会議が減る。地味だが、現場にとっては大きい。

マルチクラウド対応と「データクラウド」構想

Snowflakeの特徴は特定のクラウドベンダーに縛られないことにある。AWS上のSnowflake環境からAzure上のデータを参照する、といった運用が成り立つ。
さらにSnowflakeが推進しているのが「データクラウド」という構想で、異なる企業間でデータを安全に共有するマーケットプレイスを提供している。たとえば気象データ会社が自社のデータセットをSnowflake上で公開し、小売企業がそれを自社の需要予測に組み込む。データのコピーを渡すのではなく、参照権限だけを共有する。
とはいえ、マルチクラウド対応が本当に必要な企業はそう多くない。9割の企業は1つのクラウドで完結している。

AI連携とCortex

2024年以降、SnowflakeはAI機能の統合に本腰を入れている。Snowflake Cortexと呼ばれるAI基盤では、SQLの延長線上でLLMを呼び出せる。テーブルのテキスト列に対して感情分析や要約を実行するのに、Pythonのコードを書く必要がない。
Arctic Embedというオープンソース埋め込みモデルも公開しており、RAGパイプラインをSnowflake内部で完結させることを目指している。データの移動を減らせば、セキュリティリスクも運用コストも下がるという理屈である。
ただし、LLMの選択肢がSnowflake提供のものに限定される場面もあり、最新モデルをすぐに試したい用途には向かないこともある。

コスト構造と導入判断

Snowflakeの料金体系はクレジット制で、仮想ウェアハウスの稼働時間に応じてクレジットを消費する。ストレージ料金は別途かかるが、クラウド直契約より割高になるケースもある。
導入の判断基準はシンプルで、データ量がTBを超えて複数部門が同時にアクセスする状況なら検討に値する。数百GBのデータを数人で分析する程度なら、BigQueryやRedshiftで十分だろう。
もう1つの判断材料は人材である。SnowflakeはSQLに強いアナリストとの相性がいい。Pythonが得意なデータサイエンティスト中心のチームなら、Databricksのほうが馴染むかもしれない。ツール選びは結局、使う人間との相性で決まる。

当社の見解

データパイプラインは「動けばいい」で作ると、3か月後に保守不能になる。当社のAI記憶システムは18ステップの夜間統合パイプラインを毎日自動実行している。最も痛い教訓は、データとデザインを分離しなかったことで起きた事故だ。1,500ページのコンテンツを一括更新した際、データとHTMLが混在していたために全ページが壊れた。以降、データはデータベースに、デザインはテンプレートに分離する設計に切り替えた。

同じ失敗を二度としないAIエージェント

今のAIは、聞けば何でも答えてくれます。
でも、セッションが切れた瞬間に前回の失敗を忘れます。

当社が開発しているAIは、過去の経緯を念頭に置いて、
聞かれる前に「それは前回うまくいきませんでした」と声をかけます。
人間にも同じ失敗をさせず、AI自身も繰り返しません。

古参の社員が横にいるように、黙っていても気づいてくれる。
それが、当社が考える本当のAI社員です。

相談する