概要
Verticaとは、アメリカ合衆国マサチューセッツ州に本拠を置く、
ヴァーティカシステムズが提供している、「DWH/ビッグデータ活用」に特化した列指向型DBMSのこと。
特徴
###1.列指向型
Verticaは検索機能に特化したデータベースを列指向型DBMSとして設計されている。
列のデータをひとまとまりにして取り出すときに場面において有用であり、
大量の類似のデータ項目に対し集計が行われるもの対して効率的に取得できる。
####【利点】
・大量の行に対する少数の列の集約処理が効率的である。
列数が少ないほど、読み込むデータ量を減らすことができる。
・全行に対する少数の列の一括更新が効率的である。
新規に列データを作成し、以前のデータと置換することで、他の列へのアクセスを回避できる。
####【苦手】
・少数の行に対する多くの列の読込・更新が苦手。
行指向DBMSと比較すると、効率面では劣る。
####【その他】
・ストレージの効率とランダムアクセスの観点においても
「利点/苦手」が存在するが、Verticaの概要から逸れるため省略。
###2.UDF(ユーザー定義関数)
他DBMSと同様、モジュールを作成後、手順に沿って、ライブラリに追加すれば、
ファンクション関数として、UDF(ユーザー定義関数)が使用可能となる。
モジュールの言語は、Python/R/C++/Javaが利用可能。
SQLの仕様
###1.標準的なSQLインターフェースに対応
1.ANSI SQL99に準拠し、JDBC/ODBC/ADO.netの各ドライバに対応しているため、
WebFOCUSやDMExpressといったアシスト取扱製品、
TableauやBusiness Objects、Talend、Infomaticaなどの他社BI/ETL製品との連携もスムーズに実装可能。
###2.独自拡張のSQL[vsql]
vsqlとは、Verticaを操作するために使用するSQL言語である。
Verticaのインストールにデフォルトで組み込まれているため、別途インストールは不要。
vsqlについては、別の記事で詳細情報を記載予定。
備考
Verticaは少数の複雑なクエリを実行するDWH等に適性が高いDBMSである。
関連記事
・[Verticaとは]
(http://vertica-tech.ashisuto.co.jp/about-vertica/)
・Wikipedia - 列指向データベース管理システム
・[Verticaでファンクション機能を利用する方法]
(http://vertica-tech.ashisuto.co.jp/create_function/)