「ロー(行)」単位に加えて、「カラム(列)」単位のデータアクセスを可能にする、ハイブリッド型データベースが増えてきた。IBMのDB2は新版でハイブリッド型に姿を変えた。SAP HANAやGreenplum Database、Microsoft SQL Server 2012もハイブリッド型。ビッグデータを高速処理したいというニーズが、後押ししている。

 ハイブリッド型のデータベース製品が増えてきた。データベースの「テーブル(表)」に対して、従来の「ロー(行)」単位に加え、「カラム(列)」単位のアクセスを可能にしている。トランザクション系の処理はロー単位、データウエアハウス系の分析処理(アナリティクス)はカラム単位と使い分けることで、データベース全体のパフォーマンスを引き上げることが狙いだ。

 2013年6月に提供開始予定の「IBM DB2」の新版10.5も、カラム単位のアクセスを可能にし、ハイブリッド型に変わった。同社が「BLUアクセラレーション」と呼ぶ技術を使うことで、ロー形式とカラム形式のテーブルを、一つのデータベースの中に定義できる(図1)。

図1●IBM DB2 10.5の「BLUアクセラレーション技術」
図1●IBM DB2 10.5の「BLUアクセラレーション技術」
従来の「ロー」形式のテーブルに加え、「カラム」形式のテーブルを同一データベース内に作ることができる

 「DB2にカラム型機能が付いたので、カラム型データベース製品を別途導入する必要がない。ミッドレンジのデータベースを利用するユーザーも、分析ソリューションとして手軽にカラム単位のアクセス機能を使ってほしい」(日本IBM ソフトウェア事業 Information Management マーケティングマネージャーの中野雅由氏)。

 DB2でカラム形式のテーブルを作るには、テーブルを定義する際に“ORGANIZE BY COLUMN”を追記すればよい。「ユーザーから見ると、従来のロー形式のテーブルと、カラム形式のテーブルが透過的に使える。両テーブルのジョインも可能だ」(日本IBM ソフトウェア事業 インフォメーション・マネジメント事業部 技術統括部長の大塚知彦氏)。

 カラム形式テーブルの主な使い道は、バッチ処理で行うデータ集計処理のスピードアップだ。例えば売り上げ明細から、店舗名と店舗ごとの合計金額を集計するとき、カラム単位のアクセスではその二つのカラムのデータだけをメモリーに読み込む。ところがロー単位のアクセスでは、集計に不要なカラムを含めて、該当レコードを全てメモリーに読み込む。

 カラム形式は、ロー形式に比べてデータ圧縮が利きやすい。「日付」や「住所」などカラム単位で格納されているデータは、重複した値を持っている可能性が高いからだ。データ圧縮により、1回でメモリーに読み込めるデータ件数が増えれば、I/O効率を向上できる。DB2 10.5では、データの順序を保持するデータ圧縮機能により、圧縮済みのデータを解凍することなく処理できる。

 カラム形式を加えたハイブリッド型を初めて扱う場合でも、「過去のDB2の資産を継承できるし、データベースのユーティリティーやエンジニアのスキルもそのまま生かせる」(大塚氏)。

この先は日経クロステック Active会員の登録が必要です

日経クロステック Activeは、IT/製造/建設各分野にかかわる企業向け製品・サービスについて、選択や導入を支援する情報サイトです。製品・サービス情報、導入事例などのコンテンツを多数掲載しています。初めてご覧になる際には、会員登録(無料)をお願いいたします。