CloudNative Days Tokyo 2023から、DBaaSの現在とマルチクラウドの可能性を解説
2023年12月11日、12日の両日にハイブリッド形式で開催されたCloudNative Days Tokyo 2023のキーノートから、株式会社NTTデータグループの小林隆浩氏による、データベースのマネージドサービスであるDBaaS(Database as a Service)の動向に関するセッションを紹介する。
タイトルは「詳説探求!Cloud Native Databaseの現在地点」。小林氏は2019年のCloudNative Days Tokyoでも「Cloud Native Storageが拓く DB on K8sの未来」というタイトルで発表している。今回SNS上で、データベースをどこで動かしているか簡単なアンケートをとったところ、2019年ごろはクラウドがオンプレミスと同じぐらいだったのに対し、現在ではクラウドが倍以上になったという。そして、2019年のセッションでテーマとしていたKubernetes上でのデータベースは、今回も5%未満だったが、この分野が今回のセッション後半のテーマだ。
大手クラウドのDBaaSでも書き込みの水平スケール
2023年のクラウドデータベースの最大のニュースとして、小林氏はAWSのAurora Limitless Databaseを取り上げた。Auroraクラスターにシャードグループという仕組みを追加して、書き込みも水平スケールするようになっている。
Limitless Databaseの登場により、DBaaSの勢力状況が大きく塗りかわるというのが小林氏の考えだ。これまでDBaaSでは、レプリケーションでスケールさせるRDSタイプ、分散ストレージを使ったクラウドネイティブなAuroraタイプ、さらにマルチライター/ハイパースケールの3種類があった。マルチライター/ハイパースケールとしてはこれまで、TiDBなどのNewSQLがAWSのAuroraなどからの乗り換えを訴求していたが、そこにAurora Limitless Databaseが乗り込んできた形だ。
クラウドネイティブなデータベースが必要な理由として、アプリケーションがコンテナ化やCI/CD、マイクロサービスなどによって開発スピードを上げているときに、データベースもそれについていくためにクラウドネイティブな管理手法が求められると小林氏は説明した。
DBaaSを使ったDevはマルチクラウド化できてもOpsは難しい
こうしてクラウドベンダーからマネージドでクラウドネイティブなDBaaSが揃えば安心かというと、そうはいかない。クラウドネイティブに運用しているつもりでも、結局「特定クラウド」ネイティブになっただけではないか、というのが小林氏の問題提起だ。
クラウドの障害に備えてマルチクラウドにする、という話は以前からあった。一方で最近になって別の理由として、特にSaaS企業において、売り上げを伸ばすためにマルチクラウドにするというケースも増えてきた。インターネット経由でAPIを呼んでもらうだけではなく、顧客システムと同じクラウド上でサービスを提供するというわけだ。
小林氏はマルチクラウドについて、データ連携は必要なくアプリケーションをKubernetes化してポータビリティをもたせた「(狭義の)マルチクラウド」、そしてクラウド間でデータを同期する「クロスクラウド」という分類で呼び分けた。そして、狭義のマルチクラウドとクロスクラウドの両方で、データベースのポータビリティが結果的に足を引っ張るという。
クラウドベンダーのDBaaSを使ったサービスの技術スタックを見てみると、DevOpsでいうDev(開発チーム)の領域は、DBMSが同じであれば別のクラウドでも問題ない。一方、Ops(運用チーム)の領域では、IaC(Infrastructure as Code)のコードや、モニタリングの仕組み、チューニングのやり方について、アプリケーションほどのポータビリティはないと小林氏は指摘する。
ポータビリティのあるDBaaSや事例を紹介
では、データベースのポータビリティを高めるためにどうするかというと、「そのようにデザインされたDBaaSを使いましょう」というのが小林氏の回答だ。
近年、データベースベンダーがKubernetesをプラットフォームにして構築したDBaaSが見られるようになった。YugabyteDBやTiDBなどのマネージドサービスだ。こうしたサービスでは、複数クラウドでのポータビリティが確保される。
最初に紹介されたのが、PostgreSQLベースのエンタープライズ向けデータベースを開発しているEnterpriseDB(EDB)社の、PostgreSQL as a Serviceである「EDB BigAnimal」だ。データベースのコントロールプレーンとして自前のKubernetes Operatorを開発しており、ユーザーはどのクラウドでも同じデータベースとして使えるようになっている。
またPercona Everestは、PostgreSQLやMySQL、MongoDBに対応したプライベートDBaaSの構築ツールだ。Kubernetesを前提とし、各種クラウドやオンプレミスでDBaaSを自分で作ることができるようになっている。
小林氏が所属するNTTデータでも、グループ内のプライベートクラウド向けにPGaaS(PostgreSQL as a Service)を開発している。ただし、NTTデータのプライベートクラウドではKaaS(Kubernetes as a Service)がまだないので、そこは検討中だという。
ポータビリティだけでなくマルチクラウドのマルチKubernetesクラスターでのデータベース運用については、KubeConのセッションで発表されていた事例が紹介された。マルチクラウドのマルチKubernetesクラスターのコントロールプレーンとなるElotl Novaと、YugabyteDBを組み合わせたもので、障害時にはクラスターを切り替えるようになっている。
さらにクロスクラウドの金融での例については、日本の北國銀行の事例がある。AzureとGoogle CloudでSQL Serverを動かし、GoogleのCross-Cloud Interconnectという高速接続サービスを介して同期更新しているという。
最後に小林氏は期待として、2023年に発表されたGoogleのPostgreSQL互換データベースAlloyDBがコンテナイメージとして動くAlloyDB Omniについても触れた。AlloyDB OmniのKubernetes Operatorが登場すれば、Google Cloud以外のクラウドでAlloyDB Omniを動かしてCross-Cloud Interconnectで接続することで、マルチクラウドデータベースが実現できるのではないかというわけだ。
大手クラウドベンダーのDBaaSの動向をおさえつつ、マルチクラウドを考えたKubernetes上のDBaaSサービスの必要性や可能性を語るセッションだった。
データベースもオンプレミスからクラウドへ、そしてDBaaSへといった流れが主流になってきている。その際、Kubernetesでクラウド上のアプリケーションはポータビリティを備えるようになったが、データベースの運用はそうもいかないという指摘については、思いあたる人も多いだろう。
そうした中で、実際にマルチクラウドでデータベースを運用するサービスやツール、事例などを紹介しながら説明していたのが、具体的な将来性を感じさせるセッションだった。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- CNDT 2022、NTTデータによる金融システムにおけるクラウドネイティブなシステムアーキテクチャー解説
- ハイブリッドDBaaS戦略で企業のイノベーションを支えるEnterpriseDB
- パブリッククラウドを使ったDBaaSを展開するAivenの日本代表にインタビュー
- OLAPのための高速カラム指向データベースClickHouseの概要を紹介
- マルチクラウドのDBaaSを抽象化するAivenの製品担当VPにインタビュー
- オープンソースのストレージプロジェクト、SODAが6月14日にテックカンファレンスを開催
- エンタープライズDB、Postgres Cloud Databaseの暗号の改善によりデータプライバシー機能を強化
- NewSQL DBの国内カンファレンス「TiDB User Day 2022」開催、クラウドネイティブ環境の次世代DBは「MySQL互換」がカギ
- 【4/15開催】企業向けデータベースの新たなスタンダード 「EDB Postgres」の選定ポイント
- Kubernetes Forum@ソウル、YouTubeの本番で利用されるVitessのセッションを紹介