Verticaは、高い検索パフォーマンスを実現する「DWH/ビッグデータ活用」に特化したデータベースです。
集計/分析処理の高速化に特化するアーキテクチャで、一般的なデータベースにありがちな課題を解決します。

Verticaの位置付け

Verticaの位置付け



データ活用基盤(DWH、ビッグデータ基盤)を取り巻く現実


データ活用基盤に対しては、常に以下のような要求が突き付けられています。

データ活用基盤への要求

データ活用基盤への要求



これらの要求に一般的なデータベースで対応すると、以下のような課題が浮上してきます。

一般的なデータベースの課題

一般的なデータベースの課題



DWHは基幹系データを蓄積するため、年々データ量が増え続け、検索レスポンスは日々悪化傾向にあります。そのため、索引や集計表を作成したり、ハードウェアを増強するなど、パフォーマンスを維持するためのコストも増え続けます。また、その対応に追われ、新たなユーザー要件(レポート作成など)への対応も遅れがちです。
これがビッグデータ基盤ともなれば、DWHを遥かに凌駕するスピードでデータは増え続け、人手によるパフォーマンス・チューニングではとても対応することはできません。


Verticaのアプローチ


Verticaが目指したのは「パフォーマンス」と「コスト」の両立です。

about-vertica-04

パフォーマンスは、DWHアプラインスの導入や、一般的なデータベースでもDWH専用機能の導入やフルチューニングを施せば実現可能です。しかし、そのためには膨大なコストが必要になります。

Verticaであれば、先程の課題を以下のように解決します。

Verticaの解決策

Verticaの解決策



こちらは、汎用的なデータベースと検索性能を比較したベンチマーク結果のグラフです。
Verticaは、一切のチューニングを行わず、データをロードしただけで、従来のデータベースでは実現できなかった高速パフォーマンスを発揮します。汎用的なデータベースでフルチューニングを行った場合と比較しても、それを上回るパフォーマンスとなりました。

Vertica検索性能比較結果

Vertica検索性能比較結果




もう一つは、特に維持コストの圧縮効果を示したグラフになります。
将来的な維持コストを抑制することで、IT投資をより戦略的なものにしていくことができます。

コスト圧縮イメージ

コスト圧縮イメージ




Verticaの特長


速いだけじゃないVerticaの特長について、簡単にアーキテクチャを交えながらご紹介します。


列指向


列指向型データベースであるVerticaは、列単位でデータを格納し、必要な列だけを読み込むため、ディスクI/Oを劇的に削減します。また、列指向に最適化されたDBエンジンを搭載しており、従来のリレーショナル・データベースに比べ、クエリを50~1,000倍高速化します。

列指向の優位性

列指向の優位性



データ圧縮


データの属性に応じた最適な圧縮アルゴリズムにより、データを最大90%圧縮します。さらに、圧縮した状態で内部演算処理をするため、物理ストレージの容量を更に削減します。

カラムストアによる高い圧縮率

カラムストアによる高い圧縮率



超並列アーキテクチャ


シェアードナッシング方式により、汎用PCサーバー1台からリニアな性能向上を実現します。また、すべてのノードが同じ役割を実行するため、ノードの拡張時にオーバーヘッドが発生しません。

高い同時実行性を実現する真のMPPアーキテクチャ

高い同時実行性を実現する真のMPPアーキテクチャ



高可用性


Verticaは、3ノード以上の構成でレプリカを保持することができます。また、自動レプリケーションにより、障害が発生した場合でも、サービスをそのまま継続させることが可能です。

自動レプリケーションによる障害発生時サービス継続

自動レプリケーションによる障害発生時サービス継続



自動チューニング


対話形式のGUIツール(Database Designer (略記:DBD))を利用することで、データ圧縮や列の並び替えなど、検索に最適なデータ配置を短時間で自動的に行います。

最高のパフォーマンスが出せる物理デザインを自動作成

最高のパフォーマンスが出せる物理デザインを自動作成



高速データロード


Verticaにデータをロードする場合は、SQLを書かずにそのままディスクに書き込むバルクロードを使用することで、大量データを高速にロードすることができます。

高速データロード

高速データロード



同時実行制御


Verticaは、複数の利用者が同時に利用する環境でも、特定のクエリがシステム全体に影響を与えないよう、効率的にクエリを並列処理します。また、リソースプールと呼ばれる、CPUやメモリー、同時実行数などを制御できるプールが作成でき、ユーザー単位、セッション単位でのリソース制御も可能です。

リソースプールによる同時実行制御

リソースプールによる同時実行制御



GUIベースの管理ツール


Verticaでは、CUIベースの管理ツール(Administration Tools)のほか、GUIベースの管理ツール(Management Console)も標準提供されます。そのため、クラスターのリソース状況やデータベースの管理などが各種Webブラウザ上で可能となります。

Management Console

Management Console



標準的なSQLインターフェース


ANSI SQL99に準拠し、JDBC/ODBC/ADO.netの各ドライバに対応しているため、標準のBIツール/ETLツールとの連携もスムーズです。

周辺ツールとの高い接続性

周辺ツールとの高い接続性



拡張分析


空間解析などの独自関数をあらかじめ用意し、分析をよりし易くしています。また、R言語やC++など、ユーザが独自で定義を作成することもできます。

標準SQLで高度な分析環境を提供

標準SQLで高度な分析環境を提供