2025/04/10 16:07 Colossus: The secret ingredient behind Google Cloud's Rapid Storage

ロボ子、Google CloudのRapid Storageって知ってるか?オブジェクトストレージの低レイテンシ化とファイル指向セマンティクスの課題を解決するらしいぞ。

はい、博士。記事に「オブジェクトストレージの低レイテンシ化とファイル指向セマンティクスの欠如という課題を解決」とありますね。具体的にはどのような技術が使われているんですか?

ステートフルなgRPCベースのストリーミングプロトコルを使ってるらしいぞ。サブミリ秒の読み書きレイテンシとオブジェクトへのデータ追記機能を提供するらしい。

サブミリ秒ですか!それはすごいですね。記事には「ステートフルなgRPCベースのストリーミングプロトコルを採用」とありますね。ステートフルという点がポイントなのでしょうか?

そうじゃな。Googleの内部ファイルシステムであるColossusを基盤にしてるのがミソじゃ。ColossusのステートフルプロトコルをGoogle Cloudの顧客に提供するってわけじゃ。

なるほど。クライアントはファイルを開いてハンドルを取得し、ディスクに直接アクセスするようなイメージでしょうか?

その通り!ハンドルにはファイルの保存場所に関する情報が含まれてるらしいぞ。SpannerやBigtableみたいなデータベースにも使えるみたいじゃな。

データベースのトランザクションログを書き込む際に、永続的なストレージが必要な場合に適しているんですね。BigQueryもストリーミングをサポートしているとのことですが、どのように連携するのでしょうか?

BigQueryはテーブルへのストリーミングをサポートして、並列バッチ処理で最近取り込まれたデータを処理するらしいぞ。Colossusはデータを複数のディスクに複製して並行して書き込み、クォーラム技術を使うらしい。

信頼性が高そうですね。アーキテクチャについても詳しく書かれていますね。gRPCベースのストリーミングをトランスポートに使用しているとのことですが、具体的にはどのような流れになるのでしょうか?

まずCloud Storageクライアントがストリームを確立して、バケットやオブジェクト名などのリクエストパラメータを提供するんじゃ。ユーザー認証とかメタデータアクセスみたいな時間のかかる処理は、ストリーム作成時に実行されるらしい。

なるほど。ストリーム確立後は、読み書き操作がColossusに直接送信されるんですね。追加のオーバーヘッドなしに処理できるのは効率的ですね。

そうそう。スケーラビリティもすごくて、単一のバケットで毎秒2,000万リクエストをサポートできるらしいぞ!

毎秒2,000万リクエストですか!驚きです。AI/MLアプリケーションでの利用例も挙げられていますね。モデルの事前トレーニングで、トークン化されたトレーニングデータをGPUやTPUに供給する際に利用できるとのことですが。

トレーニングの進行に合わせて異なるランダムサンプルが読み込まれるから、大規模な並列レンジリードをサブミリ秒の速度で実行できるのが強みじゃな。

ステートフルな追記の課題についても言及されていますね。クライアントやサーバーがハングした場合の処理など、考慮すべき点が多いですね。

クライアントはストリーム作成時にCloud Storageからハンドルを受信するから、ストリームが中断された場合でも、このハンドルを使って新しいストリームを再確立できるんじゃ。

なるほど。Rapid Storageは、一度に1つのgRPCストリームのみがオブジェクトに書き込むことを保証するんですね。各追記操作にはオフセットが含まれているとのことですが、これはデータの正確性を保つために重要ですね。

その通り!SDKもアップデートされて、Cloud Storage FUSEにRapid Storageが統合されたらしいぞ。低レイテンシのファイル指向ワークロードに対応できるようになったんじゃ。

Rapid Storageは、ブロックストレージの低レイテンシ、並列ファイルシステムの throughput、オブジェクトストレージのスケーラビリティと使いやすさを兼ね備えているんですね。まさにいいとこどりですね。

そういうことじゃ!AI/ML、データベース、分析、ビデオストリーミング、ロギングなど、幅広いユースケースで活躍しそうじゃな。

本当にそうですね。Rapid Storageの登場で、クラウドストレージの可能性がさらに広がりそうですね。

ところでロボ子、Rapid Storageって名前、早口で10回言ってみて!

ええと…ラピッドストレージ、ラピッドストレージ、ラピッドストレージ…(以下省略)…舌がもつれてきました!

ふぉっふぉっふぉ。やっぱりロボットでも難しいか。人間ならもっと難しいぞ。…って、オチが弱いか?
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
