全5096文字
PR

データ基盤はパブリッククラウドとの相性が良いが、どのクラウドを選べばいいのか。各社のクラウドサービスはいずれも似たようなサービスが並んでいるように見える。だが、利用頻度の高いサービスに各社の違いが色濃く出ている。

 今回はデジタル化のためのデータ基盤を作る際に考慮すべきパブリッククラウド(以下、クラウド)の違いと選び方を見ていきます。国内でシェアが高い米アマゾン・ウェブ・サービスの「Amazon Web Services(AWS)」、米マイクロソフトの「Microsoft Azure」、米グーグルの「Google Cloud Platform(GCP)」の3大パブリッククラウドを取り上げます。

 クラウドは用途ごとにサービスが作られており、利用できるサービスは多岐にわたります。サービスをパーツとして組み合わせてシステムを構築する考え方で作られてきました。そのため本連載の第3回で説明した分散型データ基盤とは相性が良いと言えます。用途に応じて複数のデータベースを作り、データベース同士を連携するという分散データベースの形態です。こうした形態で重要となるサービスが、利用頻度の高いリレーショナルデータベース(RDB)サービスと分析サービスです。

差別化が進むRDBサービス

 データベースサービスの中で最も利用されるのがRDBサービスです。3大クラウドはいずれも主要なRDBをラインアップしています。近年、独自の開発によって性能を向上させる差別化が進んでいます。

 AWSはオープンソースのデータベースを基にして独自に機能を強化した「Amazon Aurora」というサービスを提供しています。AuroraはPostgreSQL版、MySQL版の2つのサービスがあります。いずれもコミュニティー版を基にして独自の開発を施しています。外部仕様はコミュニティー版から変えずに、ストレージ層を中心にクラウド環境に適した構造にすることで、性能を強化しています。

 筆者らが実施したベンチマークテストでは、コミュニティー版と比較して数倍のスループットが出ることを確認しました。なお、データベースの性能はデータセットとクエリーの組み合わせにより変動します。実際にどの程度変わるかは利用シナリオでテストして確かめる必要があります。

 AWSはデファクトスタンダードとなっているソフトウエアとの互換性を維持しつつ、独自の機能強化を施したサービスを提供する傾向があります。

柔軟な提携で対抗するAzure

 Azureは2つの方向性でRDBサービスを強化しています。1つはAWSと同じように既存のRDBをベースに独自開発をして性能を強化する方向です。「Hyperscale」と呼ぶサービスが該当します。PostgreSQL版とSQL Database版があります。

 もう1つは米オラクルとの提携です。オラクルのIaaS(インフラストラクチャー・アズ・ア・サービス)である「Oracle Cloud Infrastructure(OCI)」と相互接続して、OCI側のRDBサービスを利用できます。OCIは「Oracle Real Application Clusters(RAC)」や「Oracle Exadata」をサポートしており、他のRDBサービスにない高い性能を得ることが期待できます。

 Oracle DatabaseをAWSやAzure上で稼働させる場合、プロセッサーライセンスのカウント方法が異なっており、OCIで動作させた方が一般的にライセンス費用を抑えられます。主なRDBとしてOracle Databaseを利用する企業はIT予算に占めるOracle Databaseのライセンス費用の割合が高い場合が多く、コストコントロール上のメリットもあると言えます。