アシストは2014年1月15日、DWH(データウエアハウス)用途のデータベース管理システム(RDBMS)新版「InfiniDB 4」(写真)を発表、同日提供を開始した。新版では、DBMSの組み込み機能を使ってデータ分析業務を簡素化できるように、新たに26個のウインドウ関数を実装した。価格(税別)は、1コア当たり90万円で、保守料金は年額18万円。開発会社は、米Calpont。
InfiniDBは、MySQLをベースとしたDWH専用のRDBMSである(関連記事:アシストが並列DBMS「InfiniDB」新版、CPU優先制御などを追加)。フロントエンドのSQLエンジンとバッグエンドのストレージ検索エンジンを分割したアーキテクチャー、カラム(列)指向のデータアクセス、スケールアウト構成(エンジンだけでなく、データも各サーバー内蔵ドライブに分散配置)---といった特徴を備える。これらの工夫によってストレージI/Oを減らし、検索を高速化している。
新版ではまず、大量データの分析業務を効率化するため、分析関数としてウインドウ関数(全26種類)を使えるようにした(文末の表)。これにより、ストアードプロシージャや外部アプリケーションによってデータ分析ロジックを作り込むことなく、DBMSの組み込み関数だけで複雑なデータ分析を実施できるようになった。なお、ウインドウ関数とは、SELECT句において、個々の行から直接値を取得するのではなく、複数の行をまとめた集合(ウインドウ)から値を取得できるようにする機構である。
新版ではまた、フロントエンドのSQLエンジンとバックエンドのストレージエンジンとの間のネットワーク転送量を、データ圧縮の効率化によって、従来版の2分の1に削減したとしている。これにより、DBMSのデータ検索性能が向上した。さらに、増え続けるデータ量の状況をレポートする機能を強化し、複数の単位(データベース単位、スキーマ単位、テーブル単位、カラム単位)でレポートできるようにした。
このほかにも、データ型として新たに符号無し整数(unsigned_int)を扱えるようにした(負の整数を扱わない場合は扱えるデータ量が2倍になる)。また、バイナリデータ形式を、一旦テキストデータ形式に変換することなく、直接ロードできるようにした。さらに、CONCAT(連結)やINSERT(挿入)など、9種類の関数の処理性能を向上させた。
AVG() | COUNT() | CUME_DIST() | DENSE_RANK() |
FIRST_VALUE() | LAG() | LAST_VALUE() | LEAD() |
MAX() | MEDIAN() | MIN() | NTH_VALUE() |
NTILE() | PERCENTILE_CONT() | PERCENTILE_DISC() | PERCENT_RANK() |
RANK() | ROW_NUMBER() | STD() | STDDEV_POP() |
STDDEV() | STDDEV_SAMP() | SUM() | VAR_POP() |
VARIANCE() | VAR_SAMP() |