JTBが発行するクレジットカード「JTB旅カード」のWebサイトを2009年4月よりオープンしました。
システム開発は、NTTデータCCSが担当、コンテンツ管理や会員情報管理にPostgreSQLとpgpool-IIの組み合わせで、障害対策と負荷分散を実現可能な構成を同社に提案しました。
pgpool-IIの利用は初めてという同社が6ヶ月という短期間でのシステム開発を成功させるために活用したのがSRA OSSのコンサルティングとサポートです。
同社ビジネスソリューション事業本部でデータベースの選定と設計作業にあたった福田 徹氏と現在システムの運用を担当する堀井 正政典氏にコンサルティングとサポートの活用例を伺いました。(文中敬称略)
JTBが発行する「JTB旅カード」のWebサイトは、カード会員が利用するポータルサイトと、ポイント管理を行うバックヤード機能から構成されています。
今回会員向けサイトを構築することになったのは、従来クレジットカード会社で行っていたポイント管理をJTBに移管することで、顧客のニーズを反映した情報提供を行うCRMの役割を果たすためです。
「JTB旅カード」Webサイトはカードのリニューアルに合わせ2009年4月にオープンしました。
JTB旅カードトップ画面
構成図
システム構成は、Webサーバ、アプリケーションサーバ、データベースサーバのWebの3層構造となっており、アプリケーションサーバとデータベースはコンテンツ用とバックヤード用の2つに分かれています。
JTB様からインフラで利用するソフトウェアの指定はありませんでしたので、システムの求める性能、可用性、コストの観点で選定を行いました。
まず、コストの面でなるべくシステム開発にコストをさけるようオープンソースデータベースの採用を視野に入れました。
そのなかで、PostgreSQL の他に MySQL や Firebird といったデータベース製品が候補にあがりましたが、社内で PostgreSQL を利用した業務システム経験が豊富にあったこと、公開されている事例などから今回のシステムでも十分利用可能と判断し PostgreSQL を採用することにしました。
福田 徹氏
ご存じの通り PostgreSQL はサードパーティーで可用性や性能を向上するソフトウェアがたくさんあります。
当初は、フェイルオーバー型のクラスタの採用を検討していましたが、スタンバイ側のサーバのリソースも有効活用したいということから、レプリケーションで可用性を向上しつつ、負荷分散で検索性能の向上ができる pgpool-II を採用することになりました。
これにより、データベースサーバのリソースを有効活用しつつ、性能と可用性を向上できる構成ができました。
本システムの開発では、開発開始の段階で要件が決まっていないという状況でしたので、分析・設計・実装・テストを繰り返しながら開発を進めるアジャイル開発の手法をとりました。
概要設計が1.5ヶ月、分析・設計・実装・テストの構築はフェーズを3回に分けて3ヶ月、総合テストとプレ本番を1.5ヶ月というスケジュールで実施しました。
短期間でプロジェクトを成功させるために、当社はシステム PostgreSQL と pgpool-IIのデータベース部分の設計や構成設計をSRA OSS のコンサルティングを 活用することで短期間に抑え、システム開発部分に注力しました。
今回採用することにした pgpool-II は、豊富な機能もさることながら多種多様な構成をとることができます。
構成設計の段階で、このシステムで実現したいことを伝え、それを実現するのに最も適した構成を相談して決めていけたことがとてもよかったです。
時間があれば当社でも検証などを行い決めていくことができたかもしれませんが、経験豊富なコンサルタントの意見で時間面の短縮が図れたと考えています。
構成設計など、ミーティングをしながら進めていくべきところはコンサルティングで、それ以外の開発段階でのPostgreSQL や pgpool-II の使い方や注意点などはサポートを活用しました。
シーケンスという連番を発行するデータベースの機能を利用していましたが、クラスタ構成の場合はアプリケーション開発でも工夫が必要です。
そういった場合にどのように解決するのが良いか、という点はサポートに相談して短期間で解決することができました。
また、システム開発段階からかかわっていただいたことでそのあとのサポートや保守もスムーズにいくのではと考えました。
大きなトラブルもなく順調に稼働しています。
私は、PostgreSQL の運用をするのは初めてで、バックアップや VACUUM の運用に関して不安もありましたが、SRA OSS のサポートに相談することで日々解決することができています。
堀井 政典氏
新規開発したシステムですので、まずは1年間安定運用を行うことを最優先に考えています。
その後の展望としては、チューニングとPostgreSQLのバージョンアップを視野に入れています。
まず、チューニングは、会員数も増えてきていることと無停止で運用を続けていることから性能の問題が出てくると考えています。
チューニングや性能面で効果のあるメンテナンスなどを実施していきたいと考えています。
PostgreSQLのバージョンアップは決定事項ではありませんが、PostgreSQLでは新しいバージョンが出るたびに運用性の強化が行われているので非常に魅力を感じています。
株式会社NTTデータCCS 本社所在地 : 〒140-0002 東京都品川区東品川四丁目12番1号 品川シーサイドサウスタワー TEL : 03-5782-9460 FAX : 03-5782-9499 資本金 3 億 3,000 万円 設立 1970 年 4 月 |
03-5979-2701 |