更新履歴はじめにVerticaの大きな特徴であるプロジェクションの概要は、こちらの記事でご紹介しました。本稿では、ライブアグリゲートプロジェクションについて、詳しく解説します。ライブアグリゲートプロジェクションとはライブアグリゲートプロジェクションを使用すると、集計処理を行った後の結果セットをプロジェクションとして保持できます。この場合、プロジェクション作成時に指定したSQLが発行されると、Verticaは実際には集計処理を行わず、ライブアグリゲートプロジェクションを参照するため、集計処理にかかるオーバーヘッドをなくすことができます。データがロードされるとライブアグリゲートプロジェクションの内容も最新の結果セットに更新されるため、常に最新の結果を得ることができます。[イメージ図]制限事項ライブアグリゲートプロジェクションを利用する場合は、以下の点にご注意ください。SUM、MAX、MIN、COUNTです。DML(*)は高速です。・参照しているテーブルに対して、MERGEを実行する場合は、オプティマイズされている必要があります。・複数のテーブルは指定できません。テーブルは1つのみを指定できます。・テーブルの全カラムが含まれている場合であっても、スーパープロジェクションとして扱われません。・ライブアグリゲートプロジェクションで指定されている、テーブルのカラム削除や変更はできません。実行するためには、ライブアグリゲートプロジェクションを削除する必要があります。(*)9.2以前はテーブルに対して、DELETE、UPDATE、MERGEは実行できませんでした(COPY、INSERTは可能です)。DELETE、UPDATE、MERGEが実行できるようになりました。PROJECTION文を作成、実行します。指定された名前でオブジェクトが既に存在する場合はメッセージを出力します。このオプションを省略してオブジェクトが存在する場合、ROLLBACKエラーメッセージを返します。どちらの場合も、オブジェクトは作成されません。オブジェクトが存在しない場合は作成し、存在する場合は既存のオブジェクトを利用する、SQLスクリプトを作成する場合に役立ちます。関連情報はON_ERROR_STOPを参照してください。プロジェクションとテーブルが含まれるスキーマ名を指定します。データベース名を指定する場合は、現在起動中のデータベースを指定します。作成するプロジェクション名を指定します。プロジェクション名は、同じスキーマ内のシーケンス、テーブル、プロジェクション、ビュー、モデルの中で一意の必要があります。プロジェクションの列名を指定します。指定しない場合、SELECT文の中で指定したテーブルに含まれる列名を使用します。GROUPED句を参照してください。列のエンコードタイプを指定します。デフォルトはAUTOに設定されます。列のデフォルトのアクセスランクを上書きします。このパラメータは、Verticaが列にアクセスする速度を調整します。詳細は「デフォルトの列ランキングの上書き」を参照してください。プロジェクションに含めるテーブルの列名または式を指定します。指定する場合は、プロジェクションとテーブルの列名と式の指定順は、完全に一致している必要があります。プロジェクションで利用するテーブルを指定します。エイリアスで修飾することもできます。SELECTリストの中から、1つ以上の列名を指定します。最初のcolumn-exprはSELECTリストの最初の列名、2番目のcolumn-exprはSELECTリストの2番目の列名を指定します。プロジェクションのK-Safetyを指定します。k-numはシステムのK-Safety以上である必要があります。プロジェクションがセグメント化されていない場合は、このパラメータは無視されます。k-numを省略すると、VerticaはシステムのK-Safetyを使用します。詳細はK-Safetyを参照してください。9.3で確認しています。technology.。