Verticaテクノロジー概要
このコースを終了することで、以下を理解することができます:
- Vertica プラットフォームの構成要素
The Vertica Analytics Platform
Verticaは、最も要求の厳しいビッグデータ分析イニシアチブに対応するために、最初のコード行から構築された最も先進的な統合分析プラットフォームです。Verticaは、妥協のない速度、制限のないスケール、および幅広い消費モデルを提供します。
Verticaの構成要素
Vertica アプリケーションは、以下の4つの主要な目標に基づいて構築されています:
-
パフォーマンス
- 列指向のデータ構造(プロジェクション)にデータを格納することで、不要なデータのスキャンを省略し、高速なクエリを実現。
- エンコードアルゴリズムにより、ディスクアクセス時間を短縮。
-
スケーラビリティ
- 分散型の超並列アーキテクチャを採用し、ノードを追加することでスケールアップ可能。
-
信頼性
- クラスタ内のノードに冗長データを分散し、障害時のデータ損失を防止。
- Webベースの管理コンソールを提供し、監視と管理を簡素化。
-
展開の自由度
- オンプレミス、主要なパブリッククラウド、またはハイブリッド環境に柔軟に展開可能。
- 既存のETLやBIツールと統合可能。
パフォーマンス上の利点
列ストアデータベース
- 従来の行ストアデータベースでは、クエリの実行時にすべてのカラムをスキャンする必要がある。
- Verticaでは、データを列ごとに格納するため、クエリに関連する列のみを読み取ることが可能。
- これにより、ディスクI/Oを削減し、クエリ応答時間を大幅に短縮。
データエンコーディング
- データはエンコードされた状態で格納され、必要なときにのみデコードされる。
- これにより、CPUの処理負担を軽減し、ストレージの節約を実現。
- 一般的なエンコード方式:
- Block_dictエンコード: ソートされていない高カーディナリティの文字データ向け。
- Deltarange_compエンコーディング: ソート済みデータの値の差分を格納。
- 実行長エンコード (RLE): 連続する同じ値を圧縮。
信頼性と拡張性
超並列処理(MPP)
- VerticaはLinuxベースの標準的なハードウェア上で動作。
- クラスタ内のすべてのノードが同等なピアノードとして機能。
- 追加のノードをシームレスに統合可能。
データ冗長性(K-Safety)
- データのコピーを複数のノードに保持し、障害時もデータのアクセシビリティを確保。
- ノード障害時も継続的なクエリ実行が可能。
使いやすさ
自動データベース設計
- データベースデザイナ(DBD)が、最適なデータストレージ構造を提案。
- 代表的なデータセットとクエリセットを指定することで、適切なデータレイアウトを生成。
マネージメントコンソール(MC)
- ブラウザベースの管理ツール。
- データベースの作成、構成、監視を統合的に実施。
- システムアラートの設定やデータベース診断機能も搭載。
展開の自由度
展開オプション
-
エンタープライズモード
- 独自のハードウェア環境でインストール可能。
- クラウド環境(Amazon, Azure, Google)にも対応。
-
Eonモード
- コンピューティングとストレージを分離。
- 共有ストレージを利用し、スケールしやすい構成が可能。
高度な分析
組み込み分析関数
- SQL分析関数を拡張し、予測分析や機械学習処理を容易に実行可能。
- 地理空間データ分析、時系列データ処理、異常検出機能を提供。
機械学習
- データ準備からモデル構築、評価、デプロイまでのワークフローをサポート。
- データベース内で直接機械学習モデルを実行可能。