株式会社ジェイティービーQレプリケーションで分散DBをリアルタイム連携し、大規模基幹システムの24時間サービスを実現 掲載日 2007年7月18日
Qレプリケーションにより、分散したDBを リアルタイムに連携し、複数業務を一本化 従来の予約システムを全面的に刷新し、国内旅行商品の予約システムを構築する上で、パートナーにIBMが選定されました。2005年春には、新システムの要件定義がまとまり、本格的な開発作業が始まります。2006年前半のピーク時には、100名規模のアプリケーション開発部隊が3チーム、80名規模の共通機能・基盤開発部隊とともに、システム基盤部隊はジェイティービー情報システムに加えてIBMの技術スタッフ35名ほどが常駐する混成部隊で50名を数え、総勢400名規模の大規模な開発体制が敷かれました。 従来のシステムでは、オンライン、バッチ、(宿泊)仕入、(コース)造成などの業務別にさまざまなシステムが分けられ、独立して稼働しており、新システムでは、これらの業務の一本化を目指していました。ところが、個々の業務によって参照処理が中心になるもの、高速なトランザクション処理が必要なものなど単一のデータベースで全業務を最適処理することは簡単ではありませんでした。 解決策として検討されたのは、業務による処理の内容に応じてデータベースを分離し、参照処理が多ければインデックスを増やす、トランザクション処理が多ければ逆にインデックスを最小化し、キャッシュを利用しやすい設計にするなど各処理に最適化したチューニングを行いながら、共通で必要な在庫情報や販売可否情報などのデータはリアルタイムにデータベース間の連携を行う方法でした。その実現に使われたのが、IBM WebSphere Replication ServerのQレプリケーションです。トランザクション系(予約)、照会系(照会)、マスタ系(仕入造成)と、主要業務別にデータベースを分離し、Qレプリケーションによってデータベース間相互で更新データを瞬時に反映することが可能になります。
トップが陣頭指揮を執る開発マネジメント 周到なテストを繰り返し、最繁忙時を乗り切る 新システムは、5,000拠点を超える店舗や提携販売店で12,000名以上のユーザーに利用され、200tpsの応答が必要なハイ・トランザクション処理能力が求められます。開発中に最も配慮が必要だったのは、ユーザーに多様な検索の利便性を提供しつつ、リアルタイムに最新の情報を提供するために、レプリケーションの高速なパフォーマンスを確保することでした。また、安定稼働を実現するための監視・運転制御、ジョブ連携、プログラムリリース機能といった運用設計にも神経を遣いました。レプリケーション経路や順序の最適化、100種以上のデータベーステーブルの準備、基盤開発チームとアプリケーション開発チームの間でルールやガイドラインの徹底を図ることなど、さまざまな工夫が重ねられました。 「ホスト系で培ってきた大規模旅行予約システムの特性や運用のエッセンスには自信を持っていましたが、本格的なデータベースシステムの開発に取り組んだ経験のないスタッフも多く、IBMの技術サポート力には随分助けられました」と酒井氏は語ります。 旅行業界では、ゴールデンウィークや年末・年始など、年に何度かの繁忙期があります。予約や照会をはじめとして、最繁忙時のトランザクション量は通常時の10〜20倍に跳ね上がることも珍しくありません。ピーク時にもトラブルを起こさないようにシステムの安定を高めるため、開発中のテスト環境作りには特に気を遣いました。テストデータやテスト用の機器も、できるだけ本稼働時に近づけるように構成を練りました。 最大で400名規模の開発部隊をまとめ上げ、周到な準備をして新システムを成功に導くことができたのは、JTBの経営陣をはじめ、トップが陣頭指揮を執る開発マネジメント体制があったからです。「定例の進捗確認、レビュー、開発チーム間の打ち合わせ、ルール作りとその徹底など、開発中は密度の高いコミュニケーションが続きました」と酒井氏は語ります。
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||