「システム障害によるサービスダウンは、機会損失や信頼失墜につながるリスクだ」という点に異論はないだろう。しかし定期メンテナンスに伴うシステム停止は「やむを得ない」と諦めていいのか。NewSQLは、こうした常識を覆す選択肢になり得る。
多くの企業がDX(デジタルトランスフォーメーション)を推進する今、社内の業務システムから社外ユーザーへのサービス提供まで、ITシステムなしでは成り立たなくなってきた。2024年上半期に相次いだ大手企業のシステム障害事例が示す通り、システムのダウンタイムがもたらすビジネスリスクはますます大きくなっている。
ミッションクリティカルなシステムにとって、スピードと可用性は重要な要素だ。クラウドネイティブなシステムを運用するユーザー企業は特に、データベース(DB)に起因するダウンタイムを避けたいというニーズから、分散SQL DB――いわゆる「NewSQL」に注目している。
ゼロダウンタイムを実現する上で、DB管理システム(DBMS)に分散SQL DBを選ぶべき理由とは何か。Yugabyteの共同創立者/共同CEOであるカルシック・ランガナタン(Karthik Ranganathan)氏へのインタビューを通じて、クラウドネイティブ環境におけるDB選びのヒントを考える。
――Yugabyteは分散SQL DBベンダーとして、システムのダウンタイムがもたらすビジネスリスクをどう考えていますか?
ランガナタン氏 一般消費者は、アプリケーションやWebサービスを「いつでも使えて当たり前」と考えています。サービスが動かなければブランドの信頼は下がってしまうでしょう。企業も競合優位性を確立するために、あらゆるサービスをデジタル化して使いやすくし、多くの消費者に利用してもらいたいと考えています。ダウンタイムはなるべく短くして、ユーザーにより長くとどまってもらうことが、ビジネスでは重要になります。
――しかし「定期メンテナンスに伴うシステム停止」はよくあることという印象です。企業も、運用管理上の計画停止はやむを得ないと受け入れているように見えます。
ランガナタン氏 稼働させているアプリケーションやDBが少なく、ITシステムにそれほど依存していない状況ならば、定期メンテナンスのためにシステムを休止させることは許容範囲かもしれません。しかしデジタル化が進み、システムのコンポーネントが増えたことで、メンテナンスの頻度は飛躍的に高まっています。
もし、ECサイトがメンテナンスのためにシステムを停止させたら、その間に買い物をしたい消費者は他のECサイトに離脱してしまう。機会損失を防ぐなら、停止させずに更新をかける「ゼロダウンタイムメンテナンス」をすべきでしょう。
――システムダウンしないという「利益」と、そのために必要な「投資」との間で、どうバランスを取ればよいのでしょうか?
ランガナタン氏 確かに、そのバランスは悩むところです。この課題については、ユーザー企業が個々に投資するよりも、当社のような専門ベンダーが投資して作り上げたソリューションを市場に提供する方が、社会全体としての投資総量を減らせると考えます。これは金銭だけでなく、技術や知的財産(IP)に関する投資も含みます。当社の創業メンバーは、Googleの「Cloud Bigtable」「Cloud Spanner」や、オープンソースの「Apache HBase」「Apache Cassandra」など、さまざまなNoSQL DBを扱ってきました。その経験を生かして、当社の分散SQL DB「YugabyteDB」が生まれています。
――YugabyteDBのユーザー企業は、どのような課題から分散SQL DBを必要としたのですか?
ランガナタン氏 当社のユーザー企業に共通する課題の一つは、システムが停止しないという意味での「レジリエンス」(回復力)です。もう一つは、処理性能を増減させる「スケーラビリティ」があります。スケールアウト(台数増)とスケールアップ(性能向上)だけでなく、規模を小さくする「縮退」も含む意味です。他には、アーキテクチャや運用をシンプルにして、システム構築時の製品選びを容易にしたいとか、本拠地と遠隔地拠点との間でデータレプリケーションをしたいというニーズからYugabyteDBを求められたケースがありました。
――企業の規模や業種で、課題の違いはありますか。
ランガナタン氏 詳細は企業によって異なりますが、大枠では似ています。金融、通信、自動車、SaaS、小売り、メディアなどの業種は、レジリエンスとデータ一貫性への要求度が高く、十分なスケーラビリティを必要としています。
例えば金融業は世界的にデジタル化が進んでおり、Wells Fargoや、幾つかの国の金融機関にYugabyteDBが採用されています。通信業では楽天モバイルがYugabyteDBの大規模ユーザーです。自動車産業ではGeneral Motorsが、約2000万台の車両からリアルタイムで飛び込んでくる大量のデータを単一のスケーラブルなDBに反映するためにYugabyteDBを採用しています。北米全土に約5000店舗を展開する食品雑貨スーパーKrogerでは、YugabyteDBがリアルタイムな在庫管理を支えています。Paramount Picturesの動画配信サービス「Paramount+」も、スケーラビリティを重視してYugabyteDBを利用しています。Paramount+のログイン・認証システムは、アメリカンフットボールリーグNFL(National Football League)の優勝決定戦「Super Bowl」の視聴に際して、のべ2億人がログインとログアウトを試合中何度も繰り返す処理を支えています。
――技術要求度がそれほど高くない中堅・中小企業やスタートアップにとっては、分散SQL DBはオーバースペックになりませんか?
ランガナタン氏 そんなことはありません。ITシステムを利用する企業ならば、分散SQL DBが役に立つ場面は幾つもあります。まずスケーラビリティについては、3ノードから4ノードに拡張して、また元の3ノードに戻すような“小さな拡張”ができるので、コストを節約できます。4コアCPUのマシンから8コアCPUのマシンにスケールアップする場面でも、計画停止をせずいつでも実施できます。俊敏性を最優先する中堅・中小企業やスタートアップが分散SQL DBを採用すると、製品にすでに組み込まれているスケーラビリティやレジリエンシー機能により、開発メンバーはデータドリブンビジネスを推進するアプリケーション開発に専念できるようになるでしょう。
――ここまでにお話しいただいた業務課題を解決し得る、YugabyteDBの特徴的な機能を幾つか教えていただけますか。
ランガナタン氏 それをご紹介する前に、YugabyteDBの設計思想をお話ししたいと思います。われわれが目指したのは、リレーショナルDBMS(RDBMS)とNoSQLの長所を統合した分散SQL DBを作り上げることでした。RDBMSからはSQL文に基づくAPIとACID特性(原子性、一貫性、独立性、永続性)を、NoSQLからはスケーラビリティや高可用性を引き継ぐようにしたのです。内部的には新しい仕組みでも、ユーザー企業が使うアプリケーションからはSQL DBやNoSQL DBであるかのように見えます。
RDBMSには可用性を確保する仕組みが含まれていないため、システム停止を防ごうとすると、ユーザー側で複雑なアーキテクチャを設計しなければなりません。しかしYugabyteDBはレジリエンスを確保する仕組みを標準搭載しています。ハードウェアやVM(仮想マシン)移行、スケールアウトやキャッシュ追加、スケールアップのような、システム稼働後の変更作業についても、ゼロダウンタイムで実現できます。
――業界標準のSQL文(DB操作命令)を利用して構築している既存のソフトウェアは、YugabyteDBへの移行に際してコードを書き換える必要がありますか?
ランガナタン氏 基本的に書き換えは不要です。YugabyteDBには、PostgreSQL互換の「YSQL」、Apache Cassandra互換の「YCQL」という2つのAPIがあります。それらのAPIに準拠しているソフトウェアなら、YugabyteDBにリフト&シフトできます。移行ツール「YugabyteDB Voyager」を利用すれば、DBのスキーマやデータ本体もライブマイグレーションできます。
――地理的に所在が分散したRDBMSでデータ一貫性を確保する場合、2フェーズコミット(Two-Phase Commit)で処理しますよね。YugabyteDBには、それと同等の機能が備わっているのですか?
ランガナタン氏 YugabyteDBは「Raft」と呼ばれる分散合意アルゴリズムでデータ一貫性を確保しています。2フェーズコミットにはネットワーク経由で複数回のやりとりが必要なため時間がかかりますし、高価で特別なハードウェアを必要とします。しかしRaftはコモディティのハードウェア利用を前提としており、パブリッククラウドへの実装も容易な点が特徴です。
――Yugabyteの創業は2016年。日本法人のYugabyte Japanは2021年設立ですね。現在までの導入実績について教えてください。
ランガナタン氏 米国では金融や通信をはじめ、さまざまな業種で100社以上に導入されています。企業規模も、大企業から中堅・中小企業まで幅広い実績があります。YugabyteDBはパブリッククラウドからプライベートクラウドまで稼働実績があり、コンテナやKubernetesでも稼働します。研究開発の拠点は米国にありますが、東欧やインドに大規模な開発センターがあり、シンガポールや日本にも技術者を置いています。
主要なベンチャーキャピタルから3億ドルの資金調達を実施し、財務面では安定した状態です。今後は米国だけでなく、欧州、インド、シンガポール、インドネシア、マレーシア、日本などに進出していきたいと考えています。
――日本ではこれからどのようにビジネスを展開する予定ですか。
ランガナタン氏 私が日本を訪れたのは今回が初めてですが、ユーザー企業、検討中の企業、パートナー企業など、さまざまな方とお話しをさせていただきました。特に、日本の各所でデジタル化が進んでいることを印象深く感じました。今後も各企業がデジタル化を加速させるということは、レジリエンスやスケーラビリティのニーズがさらに増えるということです。当社の基本的な活動方針は「アプリケーションやアーキテクチャをよりシンプルにする」という点にあり、こうした日本市場のニーズに応じて支援を強化したいと考えています。
――最後に、日本企業に向けてメッセージをお願いします。
ランガナタン氏 日本企業の皆さまにも、われわれが常日頃、世界に向けて発信しているのと同じメッセージをお伝えしたいと思います。世界は今後ますますデジタル化が進みます。デジタル化に究極に求められるものは、レジリエンスとアジリティだと確信しています。今こそ、日本企業の皆さまにもレジリエンスとアジリティを真剣に考えていただきたい時です。自社が求める要件を熟慮し、アーキテクチャと運用管理をシンプルにすることでアジリティを高めることができます。そして、何よりまずは小さく始めることです。イテレーション(反復)をダウンタイムなく繰り返し、成長させていく。まさにYugabyteDBが最適な選択肢となり得るはずです。
Copyright © ITmedia, Inc. All Rights Reserved.
提供:YugaByte Japan株式会社
アイティメディア営業企画/制作:@IT 編集部/掲載内容有効期限:2024年9月5日
PostgreSQLのメリットとスケーラビリティの伸縮性が必要ではありませんか?PostgreSQLの拡張と進化によってモダンアプリケーション開発の課題を解決する方法を解決しています。