4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

※本記事は自社ブログに掲載した同発表に対する速報記事の転載です。Qiitaで続報を解説するにあたり微修正して転記しています。
※また、後日の発表でSnowflake版PostgreSQLサービス「Snowflake Postgres」の開発が進行していることが明言されたため、記事タイトルも修正しています。

以下、SnowflakeによるCrunchy Dataの買収が発表された6/2時点で投稿したものです。


image.png

こんにちは、喜田です。
エクスチュアでSr. Data Evangelistという役割で情報発信や先進事例の創出をミッションとしています。特にこの2年は中心的にSnowflakeに携わってきたことでSnowflake Data Superheroesに任命いただきました。また、前職も含め長年関わってきたPostgreSQL愛好家(いまはその仕事はしていないという意味で)であり、日本PostgreSQLユーザ会の理事長、グローバル開発コミュニティにおいても(ソースコード開発側ではないものの、日本での10年のコミュニティ活動を認めていただき、)Contributerに任命いただいています。

このような立場から、今回のSnowflakeの発表をどう受け止めるか。ぜひSnowfake、そしてデータとデータベースに携わる皆さんと共に続報を追い、今後に期待したいという想いでこの記事を執筆します。

まず始めに今回の発表に対しての私の立場を書いておくと、SnowflakeとPostgreSQLをどちらも愛する者として非常に好意的に捉えているし、今後の展開に大変期待しています!!!発表から数時間経った今でも現地で会う人みんなにこの話をして、そのたび鳥肌が止まりません!!!この発表を現地で聞けて本当によかった!!!!!

Snowflake Summitのオープニングでの発表に関連して

Snowflake Summit 2025 1日目がいよいよ始まりました!初日はOpening Keynoteといって、個別具体の新機能というよりは、製品ビジョン、製品の到達点、話題の技術についてどう考えているかといった話題で、顧客事例、その道のリーダーとの対談という形をとって発表されました。
その中で、長年PostgreSQLに携わってきた身としては黙っていられない、界隈を揺るがすビッグな発表がされましたので、その点にフォーカスしてお話します。

突如発表されたCrunchy Dataの買収

同日の午後イチ、Opening Keynoteの数時間前にこんなニュースが発表されました。SnowflakeがPostgreSQLのリーダーの1つとして知られるCrunchy Dataを買収したとのことです。

  • Snowflakeの発表
  • Crunchy Dataの発表
    このことがkeynoteの中でも当然語られました。(下記引用はAIによる要約)

Crunchy Data買収・Postgres戦略Crunchy Data(オープンソースPostgres技術リーダー)の買収に合意。Postgresのオープン性・拡張性・開発者重視を維持しつつ、Snowflakeのパフォーマンス・ガバナンス・スケールを組み合わせて提供予定。開発者は馴染みのあるツールでSnowflakeの機能を最大限活用可能に。

Crunchy Data と Tom Lane氏

Crunchy DataはOSSデータベースであるPostgreSQLのサポートサービスやDBaaSプロダクトを提供してきて、PostgreSQL界隈では非常に大きな存在感を放つ企業でした。
単にPostgeSQLをクラウド上にホスティング/ラッピングして提供するという類のものではなく、10年以上にわたってPostgreSQLの開発に精力的であり、グローバルでの開発会議やローカルイベントにも毎年必ずといっていいほど登壇し、PostgreSQLの歴史に深く関わってきた1社として、PostgreSQLコミュニティに関わる方は誰でも聞いたことがある存在です。

また、PostgreSQLといえばこの人と誰しもが認める伝説的な開発者である Tom Lane氏 が所属していることでも知られています。多岐にわたるPostgreSQLのコードを細部まで把握し、あらゆる観点を持ってメーリングリストでの議論をリードする方ということで有名です。
※「Tom Laneの指摘をどう乗り越えるか」が勉強会ネタになるという笑い話のような本当の話もあるほどです。

例えどんな買収劇があり「PostgreSQLの機能を手に入れた」と言ったとしても、絶対的に真似できない最強カードこそが「Tom LaneがいるCrunchy Dataだから」。
この一言でぐうの音もでないほど納得してしまう、Snowflakeの本気度を裏付けるのが今回の発表なのです。

Snowflakeの機能面ではどうなっていくのか

この発表を受けて、Keynoteで語られたのはSnowflakeを強化するとともにコミュニティ開発への取り組みを継続するという情報で、具体的なことはまだ明かされていません。

以下、私の予測・妄想を多分に含みますのでご了承ください。

エンタープライズグレードのPostgreSQL

商用データベース製品とPostgreSQLをどちらも扱ってきた身としてはまたこの話題かという感じではありますが、セキュリティ・ガバナンス・運用管理性などがOSSでは弱いとされています。そしてこれらはSnowflakeがウリとしているところでもあります。その領域でSnowflakeが持てる技術をつぎ込んだら最強のPostgreSQLができる・・・

一方でSnowflakeはリアルタイム性の高い業務アプリケーションのバックグラウンドで実用的に選ばれる最適解をもっていません。(Hybrid Tableがあるものの、気軽に選べる選択肢とは言えない)

両社が両想い?だったことはそれぞれの発表からも読み取れます。
あと気になるところとしては、「それってお高いんじゃないの?」。Snowflakeプロプライエタリの付加価値もいいんですが、ぜひともOSS版にエンタープライズグレードをコミットして欲しいところです。

HTAP難しい問題

Snowflakeは昨年Hybrid Tableをリリースし、ビッグデータ用のデータベースでRDBの同時多重・低レイテンシ・トランザクショナルな更新が可能という仕組みを提供しています。しかし、ユーザー側は従来のOLTPワークロードを移植する、または新規開発でもあえてSnowflakeを選択するモチベーションはあまりなく、性能/コストなどの面で苦労も見えており結構なチャレンジとして受け止められているのが事実です。

従来のOLTPワークロードの目的で、または今後続々と出てくるであろう瞬間瞬間で動作するAIを組み込んだシステムのためにも、PostgreSQLが組み込まれるというのは理にかなっています。
しかし、たとえ同じ製品ファミリーの1つとして純粋なPostgreSQLがSnowflake上で動いたからといって、データファイルのフォーマットが違えばSnowflakeが持つ分析用データベースとしての特性は失われます。じゃあその更新をリアルタイム伝播すれば・・・というと、内部的にSnowflakeのデータフォーマットに変換するコストに跳ね返ってきます。これはOracle DatabaseがIn Memory等で長年取り組んでいることそのものです。(Oracleの進化、HTAPを謳うその他の製品で2025年現在どこまでできるか、私が疎いので個別具体のご指摘はご容赦ください。むしろ教えてください!!!)

じゃあSnowflakeがPostgreSQLを手に入れる意味は?

Hybrid Tableでその苦労を既にわかっているはずのSnowflakeが実現しようとしていることはなんでしょうか。今までそれぞれ単体では実現しえなかった、でもSnowflakeらしいアプローチを1つ妄想してしまいます。

Snowflakeはデータファイルをマイクロパーティションという単位で持っていて、このパーティションにつくメタデータを用いて「WHERE条件等に合致しない行を排除する」という動きをします。これが分析ワークロードにおいては非常に効果が高く、Snowflakeが好意的に受け止められていることの1つの要因になっています。

一方のPostgreSQLはインデックスを使って対象行を判定して「集める」仕組みです。

もう一つMVCC(Multi Version Concurrency Control:多版同時実行制御)という考え方があって、Snowflakeは一度作ったマイクロパーティションは不変、一部でも更新されたらファイルごと作り直し、でも古いファイルは手元にあることでトランザクショナルな参照やタイムトラベルを実現します。PostgreSQLはこの制御を行ごとに行います。ある行について、更新されていれば更新時点が判別でき、最新のクエリは最新の行を拾いにいくような動作です。

Snowflakeのマイクロパーティションのメタデータ利用+PostgreSQLの行レベルの更新有無判定方式を応用したら、「昨日までのデータはSnowflake側、直近のデータはPostgreSQL側を見に行って、結果の集計のところでがっちゃんこ」のようなことができないかなというのが妄想です。

両者のネイティブな仕組みを活かしつつ、苦労ポイントとなっていたリアルタイムデータの他方フォーマットへの変換をスキップできるのではないかと思います。内部実装の苦労はわからないし、私が思いつく程度のそのような方式は既に多くの場所で取り組まれているのかもしれませんが。

PostgreSQLとデータベース技術への影響

もう一つの大きな観点として、SnowflakeのOSSプロジェクトへの取り組み方が大きく評価される話題だと考えています。企業が著名なOSSプロダクトを買収した際に必ずと言っていいほど話題になるのがOSSとしての貢献を継続するのか?です。

既存PostgreSQLユーザーは安心してOK

PostgreSQLは「PostgreSQL Grobal Development Group(PGDG:PostgreSQLグローバル開発グループ)」がソースコードを保有していて、Crunchy Dataを含む1企業の持ち物ではありません。まさに今回のような、多大な影響力を持つ1企業の状況が変動したとしてもオープンなPostgreSQLの提供・開発は止まらないことが確約されています。なので、どう悪く転んだとしてもPostgreSQLの提供形態が変わってしまうことは絶対にありません。その点はPostgreSQLユーザーの皆々様におかれましてはどうぞ安心して利用を続けてください。

最悪な想定と、俺たちのSnowflakeはそうはならないという確信!

では、今回のニュースに関連して想定しうる悪いケースはというと、

  • Snowflake版プロプライエタリの機能強化に心血を注ぎ、PostgreSQLの開発に携わる元Crunchy Dataメンバーがコミュニティ貢献をストップしてしまう。結果としてPostgreSQLの開発が停滞する。
  • SnowflakeがSnowflakeネイティブに動作するようなコードをPostgreSQLに埋め込み、他のプロダクトとのエコシステムを破壊する
  • 上記のようなコミュニティの理想と異なる対応によりTom Lane氏やCrunchy Dataを育ててきたメンバーが排除・退任させられる

こんなことをするとどれもバレバレで大変印象が悪くSnowflakeの負けにしかならないでしょう。というわけでそんな未来は来ないと信じたい。

ではどうなるか。Snowflakeが、両社が培った技術とPostgreSQL、ひいてはデータベース技術をさらに発展させる。データとデータベース業界をリードする新たなリーダーの誕生を祝福する以外の道はありません!!!!(希望をコメコメ)

SnowflakeはStreamlit、Modin、Nifi、Terraform・・・とOSSプロダクトへの投資を経て直近数年だけでも多くの機能拡張を行い、概ね好意的に受け止められています。大きな方針転換をしていないことに加え、個人的な感想としては、まだ若いプロダクトに資金力のある企業が参入することは良い面が多分にあると思われます。
では、30年以上続くOSSプロジェクト、PostgreSQLへの取り組み方がどうなって、世間からどのように評価されていくのか。Snowflakeのために作り上げた革新的な技術をOSSにも還元していく、王道真っ只中のヒーローっぷりを見せつけてくれることを期待して止みません。

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?