MongoDB導入で航空券発行サービスから総合旅行支援サイトへ進化:NoSQL活用事例
複数の航空会社のオンライン航空券発行サービスを提供していたAmadeusは、NoSQLの「MongoDB」を導入したことにより柔軟な検索が可能になり、複雑な条件検索が可能な総合旅行支援サイトに生まれ変わった。
スペインに本社を置き、旅行業者向けにテクノロジーを提供しているAmadeusは、ヨーロッパに本社がある複数の航空会社が結成したグループによって1987年に設立された。旅行代理店がオンラインで航空券を発行するサービスを提供するのが目的だった。その後社内システムのデータベースをNoSQLに変更したことにより、旅行に関する複雑な問い合わせをしてくる旅行客を支援するサービスも提供できるようになった。
Computer Weekly日本語版 2月22日号無料ダウンロード
本記事は、プレミアムコンテンツ「Computer Weekly日本語版 2月22日号」(PDF)掲載記事の抄訳版です。本記事の全文は、同プレミアムコンテンツで読むことができます。
なお、同コンテンツのEPUB版およびKindle(MOBI)版も提供しています。
同社でグローバル営業部門のCTO(最高技術責任者)を務めるオラフ・シュナポフ氏は、そんな問い合わせの例として「日照時間が少なく陰鬱(いんうつ)な冬に、北欧地域からどこか温暖な場所に旅行したいのでいい目的地を提案してほしい。予算は600ユーロ」を挙げた。
同氏は、ITの専門職に就き1年前にAmadeusに入社したが、その傍らスキューバダイビングを趣味としており、インストラクターも務めている。「私はこれまでに何度も旅に出ている。ダイビングのインストラクターも時々やっているから、行き先は人里離れた場所が多い。だから私は、何事も円滑に進むように行動したいといつも思っている」と語る。
シュナポフ氏は「全てを円滑に進める」ための施策の1つとして、Amadeusのデータセンターをドイツのミュンヘン近郊の町、エルディンクに設置している。ただし全社的なIT戦略として、「Google Compute Platform」(GCP)の活用をはじめとするクラウドの利用を進化させることにも取り組んでいると同氏は説明してくれた。「当社のシステムは1日当たり230億件のトランザクションを処理する。当社が扱う航空便の利用客は年間のべ7億4700万人に上り、1日当たり400万件の予約をさばいている」と付け加える。
「スタックのローエンドでは、VMwareの『OpenStack』ディストリビューションをベースとした自社用のプライベートクラウドのIaaSを運用している。GCP上に構築したシステムも実働環境として利用している。また、これら以外のパブリッククラウド基盤にシステムを展開する計画も立てている。一方、スタックのアッパーエンドにはPaaSやSaaSのレイヤーを提供している。これらはどのパブリッククラウド上でも動作する」
そこでAmadeusはNoSQLデータベースの「MongoDB」を採用し、「インスタントサーチ」(入力中に検索結果を表示する)アプリケーション構築時に、システムに組み込んだ。このアプリケーションは、複数の領域の旅行商品を検索対象に含むことができるので、組み合わせが数十億にも上るオプションで検索を実行できる。また、検索結果はリアルタイムで表示される。旅行サイト「Kayak」は、Amadeusが開発したインスタントサーチ技術を利用したことでユーザーのコンバージョンが上がり、「ただ調べるだけ」から「予約」につなげられるようになった。
「オンラインチャネルの普及で、人々が旅行を計画し旅行商品を購入する方法はすっかり変わった」と、Amadeusのグローバル営業部門でエグゼクティブバイスプレジデントを務めるウルフガング・クリップス氏は指摘する。「当社システムのユーザーは、旅行の具体的な選択肢が提示されることで気分を盛り上げたいのだ。そこであれこれ検索を実行し、比較して決めた商品をその場で購入したがる。複雑な条件設定のクエリにもリアルタイムで結果を返すのは大変な処理で、最新のテクノロジーが必要になる」
NoSQLのアーミーナイフ
AmadeusはMongoDBを「NoSQLテクノロジーのスイスアーミーナイフ」として使っているとシュナポフ氏は説明する。「複雑なクエリを実行する際に大量のドキュメントを処理しなければならない状況にはぴったりだ。Couchbaseも使っているが、これはキーとバリュー(値)のストア(KVS)として、また検索の範囲はほんの数ディメンションにとどまるがクエリで扱うデータが大量になる場合のキャッシングレイヤーとして使用している」
Amadeusはまた、従来の方法にしか対応していない商品の予約のために、「Oracle Database」と「MariaDB」の形式のリレーショナルデータベース技術も展開している。
「インスタントサーチはもともと、社内のNoSQLデータベースの検索用に開発された。そのバージョンではロード(負荷)の増加に対処できなかった。一方リレーショナルデータベースは、われわれに必要なスケーラビリティやアジリティ(俊敏性)に対応できるような設計になっていない」と同氏は語る。
続きはComputer Weekly日本語版 2月22日号にて
本記事は抄訳版です。全文は、以下でダウンロード(無料)できます。
■Computer Weekly日本語版 最近のバックナンバー
Computer Weekly日本語版 2月8日号 NVMe over Fabricsに高まる期待
Computer Weekly日本語版 1月25日号 ARMが進めるIoT戦略
Computer Weekly日本語版 1月11日号 家庭内のIoTデバイスを守れ!
Copyright © ITmedia, Inc. All Rights Reserved.