In-Database分析に利用できるGreenplum DBのビルトイン関数
近年データウェアハウス/BIの領域で注目される技術のひとつに、In-Database分析があります。In-Database分析とは、データベース内部に高度な分析に必要なロジックを組み込むことにより、データ処理をデータベース上で実行可能にする技術です。従来であればデータベースから別の分析アプリケーション上にデータをロードして、分析後にデータベースに書き戻す必要があった処理が、In-Database分析ではこのデータ移動のプロセスがなくなるため、全体の分析処理時間を短縮することが可能です。
また、Greenplum DBのようなMPPアーキテクチャのIn-Database分析基盤では、処理ノードの追加によって分析ロジックの処理性能も向上していくため、独立した分析アプリケーション用のサーバで処理を行う場合と比較して大幅な性能向上が見込まれます。
さらに、分析対象のデータをデータベース外部へ移動する必要がなくなるため、セキュリティ面でのメリットもあります。
ではIn-Database分析で用いられる分析機能にはどのようなものがあるでしょうか。一般によく利用されるものとしては、次のようなものが挙げられます。
- 数値計算・特殊関数
- 単変量解析・多変量解析
- 時系列分析
- OLAP
- 機械学習
- 統計計算
- テキスト解析
- 地理空間計算
Greenplum DBもIn-database分析のための基本的な関数を備えており、行列定義、行列計算、線形回帰、Naive Bayes分類、地理空間計算などの関数をSQLから利用することが可能です。