キャッシュレス決済サービスを支えるデータベース基盤として計画停止は許されなかった。そこで選ばれたNewSQLデータベースとは? [PR]
現金を持ち歩かなくてもスマートフォンで簡単に料金の支払いができるキャッシュレス決済が急速に普及しています。そのなかで、キャッシュレス決済をさらに便利にするサービスが登場しました。
ELESTYLE(エレスタイル)社が提供する「OneQR」です。
OneQRは自動販売機や飲食店、アミューズメント施設、コンビニのレンタル用モバイルバッテリー、駐車場の支払機、電気自動車の充電器など、さまざまなデバイスに表示されているQRコードをスマートフォンで読み込むだけで自動的に支払いページへ移行し、PayPayやLINE Pay、メルペイ、au PAY、楽天ペイ、D払いやiD、交通系電子マネーなどさまざまな支払い方法をクリック1つで簡単に選択、決済できます。
OneQRを使えば、どのキャッシュレス決済アプリで支払えるのかをいちいち確認して、その決済アプリを自分で起動する、といった手間がなくなり、より便利かつスムーズにキャッシュレス決済を利用できるのです。
決済プラットフォームのデータベースをTiDBに切り替え
このマルチ決済サービス対応SaaSである「OneQR」と、そのプラットフォームとして決済サービスアプリケーションのためのAPIやSDKを提供する「elepay」を提供するELESTYLEのビジネスは、昨年(2022年)500%以上の成長を遂げ、それに伴って決済サービスの処理量も飛躍的に増大しました。
そうした中で同社は、決済プラットフォームを支えるデータベースをAmazon Web Services(AWS)のAmazon Auroraから、AWS上でTiDBが提供するマネージドサービスである「TiDB Cloud」へ切り替えたのです。
その理由をELESTYLE CTOの浦氏は次のように語っています。
「昨年の後半、Amazon Auroraの負荷が60%を超えてきたため、Auroraのインスタンスをより高性能なものに変更する判断をしました。
Auroraのインスタンスを変更するには計画停止が必要ですが、私たちの決済サービスは自動販売機や無人の駐車場の支払い機など、年中無休で提供されるサービスに使われています。ですから、たとえ計画停止であってもお客様にご不便をおかけすることになります。
今回のインスタンス変更が上手くいったとしても、Auroraを使う限り、またさらに次のインスタンス変更やバージョンアップのときに計画停止が発生します。
そこで、計画停止が起きないスケーラブルなデータベースを探すことにしました。」
そして同社がAmazon Auroraからの移行先に選択したのが、TiDB Cloudです。
AuroraからTiDB Cloudへの移行でゼロダウンタイム運用が可能に
TiDB Cloudはクラウド上のマネージドサービスで、PingCAP社によってAWS、Microsoft Azure、Google Cloud上で提供されています。
MySQLとプロトコル互換でありながら、バックエンドには分散型データベースエンジンを搭載し、ノードの増減によるスケーラブルな運用やバージョンアップなどをゼロダウンタイムで実現します。
「弊社はスタートアップで人員も少ないので、移行先のデータベースでもマネージドサービスを使いたいと思っていました。
TiDB CloudはMySQLの互換性があり、しかも私たちの処理の特性上、書き込み処理に高いスケーラビリティが必要でしたが、TiDBはその点でも優秀でした。
しかもスケールアップでもバージョンアップでもゼロダウンタイムが実現できます」(浦CTO)。
Amazon AuroraからTiDB Cloudへの移行作業でもダウンタイムを極力少なくすることが求められましたが、TiDB Cloudの提供元であるPingCAP社の協力の下、2022年9月頃に検証を開始し、2022年12月には無事に移行が実現します。
盧CEOは、TiDB Cloudへの移行が非常にスムーズにできたことについて、次のように高く評価しています。
「弊社は決済サービスを提供しているため、1秒でも決済ができなくなればお客様からクレームをいただきます。
ですから、どうやってサービスを停止させず、スムーズに移行できるかは十分に時間をかけて考え、検証しました。PingCAPさんにもしっかり支援してもらったおかげで大変スムーズに移行できました。」
浦CTOも移行作業は万全だったとしています。
「PingCAPの技術者の方々とデータベースの切り替えの計画を作り、レビューし、シミュレーションを行うなど、PingCAPさんのサポート体制は十分でした。」
TiDB CloudだけでOLTPに加えてOLAP機能も利用可能に
TiDBへ移行したことで、柔軟なスケーラビリティとゼロダウンタイムなどのメリットが得られた同社ですが、さらにデータ分析の点でもメリットがありました。
Amazon Auroraを利用していたときには、データ分析用に別のデータウェアハウスを運用し、そこへデータを同期させる必要がありました。
TiDB Cloudでは、TiDB自体の分散処理による分析性能の向上に加えて、オプションのTiFlashを採用することで、データ同期の必要なくデータウェアハウスを利用できます。
TiDB Cloudへの移行によるメリットについて、盧CEOは次のように語っています。
「OneQRのお客様に詳細なレポートをお出しすることで、お客様のDXを支援できるようになります。
これまでは1日に1回レポートをお客様にお出ししていましたが、TiDB Cloudに移行した後は、OLTP性能に影響せずにリアルタイムにレポートを提供できるようになりました。
リアルタイムに売り上げの状況などがレポートで分かるため、お客様もビジネスの判断が迅速に出来るようになります。小売りなどお客様がまさに求められていたことでした」(盧CEO)。
同社はTiFlashについても検証を完了し、将来的に採用を計画しています。
日本語でデータベースに問い合わせできるChat2Queryに期待
さらにTiDB Cloudでは現在、試験的な機能としてChatGPTを用いて日本語での質問をSQL文に変換し、問い合わせを実行できる「Chat2Query」が搭載されました。
つまりSQLに詳しくなくても、データベースに柔軟な問い合わせができるようになるのです。
盧CEOはChat2Queryの可能性について次のように話します。
「これまでお客様の要望に合わせて、さまざまなレポートを出力する機能を追加するのには時間がかかっていました。
Chat2Queryがあれば、例えば『先月、一番売れた商品はどれ?』とお客様がデータベースに日本語で質問できるようになる、そんな使い方ができるようになるかもしれません。これから検証するつもりですが、大変に期待しています。」
こうした使い方ができるのは、TiDB CloudがOLTPだけでなくOLAPの能力を備えているためです。
ELESTYLEが提供する決済サービスのバックエンドを支えるデータベース基盤として採用されたTiDB Cloudは、性能や可用性に関してその要件を十分満たしただけでなく、今後の発展性についても大きく期待されています。
(本記事はPingCAP株式会社提供のタイアップ記事です)
あわせて読みたい
「Platform Engineeringへの招待」、開発者の生産性を高めるプラットフォームを作り、運営していくための考え方とは(前編)。Platform Engineering Meetup #1
≪前の記事
LinuxコンテナをFreeBSDで動かす「Linux containers on FreeBSD」、containerd 1.7.0で正式サポート