データベースのモダナイズ【前編】
リレーショナルデータベースからNoSQLデータベースへの移行は必然か
Webサイトのパフォーマンス問題に悩む企業が出した答えはSQL ServerからRedisへの移行だった。同社の事例を通してデータベースのモダナイズの実際を紹介する。
赤い制服のサービススタッフと家族の旅行先として名高いといえば、英国の海岸レジャーの老舗リゾート企業Butlin's(Butlins Skyline)だ。だが、老舗といえども時代と共に変わっていかなければならない。同社もオンライン予約に対応してはいたが、そのWebサイトのパフォーマンスが一定水準に達していないことを危惧していた。
「Webサイトについて受ける苦情の中で恐らく最も多かったのが、ページの動きが遅いことだった。ユーザーがWebサイトにとどまる時間は限られていて、それ以上待つことはない」と語るのは、Bourne Leisure(Butlin'sの親会社)でソリューション設計およびデリバリー部門の責任者を務めるジョン・ハガティ氏だ。同社はButlin'sの他にHaven HolidaysやWarner Leisure Hotelsを所有している。
カスタマーエクスペリエンスを高めるためにBourne Leisureが注目したのがRedis Labsだ。同社はインメモリNoSQLデータベース「Redis」を提供する。リレーショナルデータベースよりも高いパフォーマンスを発揮する代替アーキテクチャを提供するデータベースグループの一つだ。このグループには、他にもGridGain Systemsの「GridGain」などが属する。アナリストによると、こうしたデータベースは上級IT管理者のデータベース戦略を一変させるという。
ハガティ氏がRedisに魅力を感じたのは、Bourne Leisureのバックエンドの予約エンジンを変更することなくWebサイトのパフォーマンスを向上させられるためだと話す。この予約エンジンはEmbarcadero Technologiesの「Delphi」を基盤とする一般的なホテル予約システムだ。
「この予約エンジンは、価格を問い合わせるたびに非常に多くのビジネスルールが実行される。当社にとっては柔軟性の高いシステムだが、価格を取得するのに時間がかかる」(ハガティ氏)
同氏のチームは技術刷新の一環として、この予約エンジンとWebサイトの間に新たなキャッシュ層を設けた。Webサイトで検索を実行するとこの層が働き、キャッシュ上の価格をWebサイトに返す。予約するときは、予約エンジンから価格が取り出される。
Bourne Leisureは、それまで「Microsoft SQL Server」ベースのキャッシュ層を使っていた。だが、十分なパフォーマンスは得られなかったと同氏は話す。
2017年、同社は主要業務全体でWebテクノロジーを刷新するプロジェクトに着手した。チームはこれを機にキャッシュデータベースを見直すことにした。
「当社のシステムは大変古く、メンテナンスが非常に難しい大昔のJavaスタックだった。だが、後れを取っていたおかげで幾つか新しいアイデアを取り入れる良い機会になった」(ハガティ氏)
チームはこの過程で、NoSQLデータベースとインメモリデータベースを検討する機会を得た。チームが選んだのは、Redis Labsの協力を得てキャッシュシステムをキー/バリュー形式の分散インメモリデータベースに組み込む方法だった。
Bourne Leisureがインメモリデータベースを検討したのはこれが初めてではなかった。「以前インメモリデータベースに触れる機会があったが、非常に複雑で使うのが難しいという印象だった」とハガティ氏は言う。
Redis Labsと同社のRedisを紹介された同氏は、24時間サポートが提供されることからビジネスに適していると判断した。「24時間サポートが決め手だった。オープンソースであるが故にそこまでのサポートが提供されない製品もある」と同氏は話す。
「手を加えずにそのまま利用できる機能が優れており、特に管理機能が優秀だった。当社の運用システムに気を配り、アプリケーション層をインストールしてくれたオンサイトサポートチームは大きな力となった」(ハガティ氏)
新しいキャッシュデータベースはAPI層に位置し、フロントエンドのWebサイトとバックエンドの予約エンジンにリンクされる。予約エンジンをそのまま使う必要があったのでマイクロサービスアーキテクチャへの飛躍はできなかった。だが、予約APIエージェントがWebユーザーの代理として動作する「ミニサービス」アプローチは導入できた。このシステムは拡張可能で、最高40エージェントを同時に運用できると同氏は言う。
Bourne Leisure独自のテストでは、新システムは旧システムの少なくとも10倍の高速化を実現している。ただしユーザーエクスペリエンスについては、新旧を比較できるほどのインタフェースの変化がなかったため、両者の違いを測るのは難しかった。ハガティ氏は、同社が一度に導入した新しい技術の数を考えれば「驚くべき成功」だと話す。
「レガシーシステムから新しい技術に一気に移行するのは非常にリスクが高かった。Webアプリケーションに『React』(訳注)を採用した。『Microsoft Azure』への移行も行った。自社で作成したAPIとエンドポイントも稼働させた。技術の多くが変わり、全てがRedisを利用するようになった。それでもビジネスは非常に円滑に動いている。これは大いなる成功だ」(ハガティ氏)
訳注:ユーザーインタフェース構築用JavaScriptライブラリ。
この成功は、同社の今後のプロジェクトにおけるデータベースの選択を変えようとしている。以前なら最初からリレーショナルデータベースを選んでいた。だが、今や相当の理由がない限り選ぶことはなくなったと同氏は語る。
「このプロジェクトによってあらゆる可能性があることが分かり、チームの価値観が変わった。チームはクラウドファーストの戦略を取るようになっている。インメモリソリューションを検討することもあれば、同等のパフォーマンスを得られる別のものを検討することもある」
例えば現在、チームはアップグレードオプションとしてクラウドベースのエンタープライズデータウェアハウス「Snowflake」を検討している。
後編(Computer Weekly日本語版 2020年1月8日号掲載予定)では、データベース市場を俯瞰(ふかん)しつつ、NoSQLデータベースの一つであるGridGainを紹介する。
Copyright © ITmedia, Inc. All Rights Reserved.
Computer Weekly日本語版
この記事の著者
関連記事
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「Excel至上主義」の終わらせ方 丸2日の手作業地獄から情シスと現場を救うには
-
2
取手市がVDIと決別した理由 更改費用「4倍超」を約1.7倍に圧縮
-
3
「Microsoft 365のセキュリティ運用」に関するアンケート
-
4
急増する「AIはこう言ってる」マン 判断を狂わせる「AI忖度」を防ぐには?
-
5
221人調査で分かった「情シス最大のストレス」は?
-
6
「Salesforceのテスト自動化ツール」に関するアンケート
-
7
「データストレージの活用方法」に関するアンケート
-
8
「AI時代の統合基盤・エンタープライズAI管理」に関するアンケート
-
9
AIで人を減らした企業がもう心変わり 「AIブーメラン現象」の実態
-
10
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
ホワイトペーパーランキング PR
-
1
年収2000万「クラウドセキュリティのプロ」になれる資格とは
-
2
セキュリティソフトをすり抜ける標的型攻撃メール、不審メールの見破り方とは?
-
3
Windows Updateの通信集中で回線が逼迫、ネットワーク刷新事例に学ぶ解決策
-
4
財務を戦略的組織へ進化させるAI活用術、4つの主要な障壁と解消方法
-
5
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
6
“あのファイル転送”で暗躍するノーウェアランサム
-
7
標的型攻撃メールを見破るには? サンプル文面を例に傾向を解説
-
8
商用利用の安全性を確保し大量のコンテンツを高速で生成する、AI活用の秘訣
-
9
マンガで解説、1日で生成AI環境を構築できるワークショップの中身とは?
-
10
Dark AIが台頭する時代の新発想、「より高度なAIで対抗する」具体的方法とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー