データベースのモダナイズ【前編】
リレーショナルデータベースから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日本語版
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品レビュー
「電子帳簿保存法対応」実践術:タイムスタンプ付与などの要件の手軽な実現方法 -
事例
「大企業のデジタル化」成功事例集【コクヨ、九州電力、ヨネックスなど21社】 -
製品資料
“顧客管理の課題”を簡単に解決する方法とは? -
製品資料
契約管理の“あるある課題”をノーコード開発で解決するためのポイント -
製品資料
揺らぐ境界防御 いま企業が特に警戒すべき「3つのセキュリティ課題」とは?
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
-
2
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
-
3
Microsoft製品でここまで自動化できる 情シスがやめられる手作業10選
-
4
継続利用は4割どまり M365 Copilotが「効く業務」と期待外れの境界
-
5
画面をティッシュで拭くのはNG Dellが推奨するPCの正しいお手入れ方法
-
6
メインフレームは死なず AI活用で20年来の高収益をたたき出す基幹システムの底力
-
7
「法人PCの導入」に関するアンケート
-
8
Oracle巨大ITプロジェクトはなぜつまずいたのか 8年で導入1割、追加で170億ドル
-
9
「GitHub Copilot」3000人に配布も基本機能しか使われない 保険大手が得た教訓
-
10
業務引き継ぎで困ったこと 大企業200人調査で判明した課題の第1位は
ホワイトペーパーランキング PR
-
1
AIエージェントで多様な日常業務を効率化するための入門ガイド
-
2
AIが「わざわざ使うツール」になっていない? 業務で自然に使う導線にする秘訣
-
3
JR西日本ITソリューションズが「監視業務の属人化」を解消した方法とは?
-
4
5回聞くだけじゃ足りない? トヨタ式「なぜなぜ分析」の正しい実践方法
-
5
「脱Excel」か「Excel快適化」か? 現場にやさしい業務改善の進め方
-
6
インシデント対応工数を約3割削減、東京ガスの事例に学ぶ監視体制刷新のコツ
-
7
「結局、一部の人しか使わない」 AI活用が業務に定着しない根本的な理由
-
8
AIエージェントで成果は出る? 調査結果に見る費用対効果の実態
-
9
PostgreSQLの「機能」「性能」「運用」「拡張性」に関する悩みの解消法
-
10
ゼロトラストにおける「IDaaSの課題」と補完すべき重要機能とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー