- 会員限定
- 2015/02/23 掲載
NTTデータがPostgreSQLを極限まで使い切ったその先に見たものとは?(前編)
NTTデータオープンソースDAY2015
PostgreSQLでシビアな条件に立ち向かう
NTTデータ 基盤システム事業本部 澤田雅彦氏。2012年入社以来、PostgreSQLの研究開発、技術支援に従事してきました。
大規模システムでも当たり前にPostgreSQLを使う現在でも、シビアな条件で使おうとするとまだまだ課題があります。そこで、そのような事例でPostgreSQLを使う際にどのような対策をしてきたのか、お話していきたいと思います。

PostgreSQLは、コミュニティが主体となって継続的に開発、保守されているRDBMSです。
進化のトレンドとしては、レプリケーションという大きな機能が入ったのがバージョン8から9にかけて。9.1では同期レプリケーションが入ってさらに高可用な方向に進化。9.2、9.3ではインデックススキャンの強化や、フェイルオーバーの高速化、最新版ではNoSQL機能の強化でスキーマレスのデータベースとしても使えるようになってきています。
このようにエンタープライズへの適応に向けて新機能の追加や性能改善が行われていて、同時に事例も年々大規模になってきています。近年では海外の政府、金融系、クラウドのネットワーク機能のバックエンドなど大規模システムでも使われるようになりました。
現在ではNTTデータも、PostgreSQLを大規模システムでも当たり前に使うようになりました。しかし、当たり前の使い方では太刀打ちできない要件が立ちはだかりました。
世界有数のエネルギー元売り会社の情報系システムです。

フロントエンドにはモバイルデバイスやPOS、PCなどがあります。ここから送られてくる情報を元に集計などをほぼリアルタイムに行います。システムが落ちると社会的な影響が大きいので、災害対策サイトへディザスタリカバリをしていて、情報系とはいえミッションクリティカル性の高いシステムです。
開発体制も1000人体制で、データベースは約10テラバイト、SQL文が約2万本、データベースへのアクセスは200TPS以上です。
このシステムをRed Hat Enterprise Linux 6.2、PostgreSQL 9.2、Tomcatなどオープンソースをメインに用いて構築しました。
また、PostgreSQLは拡張機能が豊富なのが特長の1つですが、よく使われている拡張機能はほぼ全て取り入れるというチャレンジングなシステムです。これだけの拡張モジュールを入れてPostgreSQLのポテンシャルを引き出さなければいけないぐらい、シビアな要件だったということです。

この開発の中での5つの課題のうち、3つのトピックについて紹介したいと思います。

【次ページ】 東日本と西日本のあいだでディザスタリカバリを実現
関連コンテンツ
PR
PR
PR