データベースの圧縮機能が強化、大規模データを極めて効率的に扱えるように
2012年4月10日、IBM DB2の最新版DB2 10の発表が行われた。セキュリティと大量データへの対応を強化したバージョンとのこと。この大量データに対応というのは、当然ながらビッグデータ時代のデータベースとして進化したバージョンということ。ビッグデータ用の機能の1つが、圧縮機能「アダプティブ圧縮」だ。圧縮で、増え続けるデータを効率的に管理する。DB2には、DB2 9.1から圧縮機能が搭載されすでに実績のあるものだ。バージョンがアップするたびに拡張がなされ、進化している機能の1つ。
そして、V9.7まではテーブル単位の辞書を使った圧縮機能だったが、今回のDB2 10からはテーブルに加えページ単位の辞書も使えるようになっている。この2つの辞書を利用することで、V9.7のものより圧縮率が大きく向上しているとのこと。DB2 9.7以前からDB2 9.7になった際にも2.5倍ほどの圧縮率の向上がなされていたが、DB2 10では従来の6.5倍もの圧縮率を誇っている。圧縮の対象となるデータはXMLでもLOBデータでも圧縮可能だ。さらに、索引も圧縮できる。
圧縮というとどうしても伸張するのにCPUリソースを消費し、それがオーバーヘッドとなり処理能力が低下するのではとの懸念も出てくる。DB2の圧縮機能はCPUリソースの消費はほんの数%しかなくその負荷よりも「ディスクI/Oにかかる時間のほうがはるかに大きくなります」と日本アイ・ビー・エム株式会社 ソフトウェア事業 インフォメーション・マネジメント事業部 マーケティング・マネージャーの中林紀彦氏。むしろ、データサイズが小さくなる分、データの転送量が減るというメリットのほうが大きく、性能の向上につながるとのこと。そのため「基本的には、すべて圧縮するという設定で問題ないと思います」と中林氏は言う。