全7613文字

米グーグルが2022年5月、一部聴衆を集め本社近くからライブ配信の形で年次カンファレンスの「Google I/O 2022」を開催した。パブリッククラウド市場では3番手ながらもテクノロジーの先進性では競合を一歩リードするグーグルが、クラウド、AI(人工知能)、セキュリティーで見せた次の一手を解説する。

[画像のクリックで拡大表示]

 今回の発表の目玉は、Google Cloudの新しいデータベース(DB)サービス「AlloyDB for PostgreSQL」だ。グーグルが独自に開発したDBのサービスで、オープンソースソフトウエア(OSS)のリレーショナルDB(RDB)である「PostgreSQL」と互換性がある。ユーザーはPostgreSQL用のSQLクエリーや拡張機能がそのまま使える。

 AlloyDB for PostgreSQLの特徴は、トランザクション処理(OLTP)性能とデータ分析(OLAP)性能を両立した点だ。グーグルによればAlloyDB for PostgreSQLは標準的なPostgreSQLに比べて、同じ数のCPUを使用する場合のトランザクション性能が4倍高速であり、データ分析性能は最大100倍高速であるという。

図 AlloyDB for PostgreSQLの位置付け
図 AlloyDB for PostgreSQLの位置付け
トランザクション処理もデータ分析処理も得意
[画像のクリックで拡大表示]

 トランザクション性能とデータ分析性能を両立したDBは、HTAP(Hybrid Transaction Analytical Processing)と呼ばれる。従来はデータ分析性能を追求するには、トランザクション処理を担うRDBとは別に、データ分析処理専用のデータウエアハウス(DWH)を用意する必要があった。しかしRDBからDWHにデータをコピーする必要があったため、最新のデータを即時に分析するのが難しかった。それに対してHTAPは1つのDBで両方が実行できるため、最新のデータを分析できる。

 Google Cloudはこれまで、標準的なRDBのマネージドサービスである「Cloud SQL」と、DWHのサービスである「BigQuery」、トランザクション処理に特化したRDBサービスの「Cloud Spanner」を提供していた。そこにHTAPであるAlloyDB for PostgreSQLを追加した。

 AlloyDB for PostgreSQLは、データ分析性能が「スケールアウト」で向上する。ノードの台数を増やすとそれに比例してデータ分析性能が向上する。AlloyDB for PostgreSQLが使用する仮想CPUを1000個以上に増やしても、データ分析性能は規模に比例して向上するという。

 AlloyDB for PostgreSQLの内部では、ストレージ層とクエリー処理などを担うコンピューティング層が異なるクラスターとして分離されている。さらにストレージ層は、トランザクションログの処理を担う「データベース・ストレージ・エンジン」層と、複数のゾーンにまたがってデータを保存する分散ファイルシステム層に分かれる。分散ファイルシステムにはグーグルが自社開発した「Colossus」を使用する。

 コンピューティング層は3種類のノードで構成する。トランザクション処理を担う「プライマリ」のノード、プライマリの複製(レプリカ)でありプライマリに障害が発生した場合に処理を代替する「フェイルオーバーレプリカ」と、レプリカで読み取り専用の「プールノード」だ。