写真1●LPI-Japanの成井弦氏
写真1●LPI-Japanの成井弦氏
[画像のクリックで拡大表示]
写真2●NTTソフトウェアの勝俣智成氏
写真2●NTTソフトウェアの勝俣智成氏
[画像のクリックで拡大表示]

 Linuxをはじめとするオープンソース関連の技術者認定試験を実施するLPI-Japanは2013年11月1日、データベース領域におけるOSS活用を支援する活動の一環として、「OSS-DB最前線 ~2013秋~」と題するイベントを開催した。2013年9月にリリースされたPostgreSQL 9.3の新機能紹介や商用DBであるOracleとの対比を中心に、各種講演が行われた。

 LPI-Japanの成井弦氏(理事長、写真1)はオープニングセッションにおいて、「データベース領域ではオープンソースのPostgreSQLが多くの分野で業界標準になりつつある」と述べた。その背景には、(1)ミドルウエアにおいてはデータベースのライセンスや保守費用が最大のコスト要因になっている、(2)クローズドソースのソフトウエアだとユーザー企業が自社で改変できないのでライバル他社に対してITによるアドバンテージを得にくい、(3)多くのケースにおいてPostgreSQLの性能は商用データベースと同等、の3つがあるとする。

 基調講演にはNTTソフトウェアの勝俣智成氏(技術開発センター OSS基盤技術部門 ビッグデータ推進室 主任エンジニア、写真2)が登壇。「PostgreSQL 9.3の徹底解析」との講演タイトルで、新機能について説明した。PostgreSQL 9.3の新機能のうち、インパクトが大きいのは「更新可能ビュー」「マテリアライズドビュー」「Postgres_FDW」などに関するものだという。具体的な話に入る前に、「新機能を評価する際は、できるようになったことと、できないことの両方を正しく把握する必要がある」と指摘した。

 更新可能ビューはこれまで参照専用だったビューが、文字通り更新可能になったもの。「SELECT文に式や関数、リテラルなどが入っている場合など、更新可能にならないこともある」と注意を促した。

 また、マテリアライズドビュー(クエリー結果をキャッシュしておくビュー)では、新たにインデックスを定義できるようになった。ただし、「トリガーやcronを使ってリフレッシュする必要があることや、リフレッシュの際には排他ロックが取得されることを考慮すべきだ」という。

 Postgres_FDWは、外部にあるPostgreSQLのテーブルをローカルのテーブルのように扱える新機能である。できないこととして、「結合やソート、集約などはクエリーが最適化されず、外部テーブルからデータを取得してローカルで処理するので、想像をはるかに超える時間が掛かることがある」と語った。