はじめに
Vertica 9.2までデフォルトで利用可能だったWOSですが、Vertica 9.3からはデフォルトで無効化されています。こちらの記事では、Vertica 9.3においてWOSを有効化する方法についてご紹介します。
旧バージョンから9.3にバージョンアップ(*1)した際、性能的な懸念が見込まれる場合においてご利用ください。
(*1)9.3のVerticaを新規インストールした場合に該当します。
同一筐体内で直接Verticaのバージョンアップを行った場合、WOSが有効となるため、該当しません。
設定変更手順
設定するシステムパラメータ
WOSの利用可否は以下のシステムパラメータによって、制御されます。
パラメータ名 | WOS無効化(デフォルト) | WOS有効化 |
|---|---|---|
DMLTargetDirect | 1 | 0 |
設定例
以下の手順にて設定の変更を行います。
# 現在のパラメータ設定値の確認
dbadmin=> SELECT parameter_name,current_value
dbadmin-> FROM configuration_parameters
dbadmin-> WHERE parameter_name = 'DMLTargetDirect'
dbadmin-> ;
parameter_name | current_value
-----------------+---------------
DMLTargetDirect | 1
(1 row)
# パラメータ変更(今回の例では無効化)
dbadmin=> ALTER DATABASE sfadb SET DMLTargetDirect = 0;
ALTER DATABASE
# 変更後のパラメータ設定値の確認
dbadmin=> SELECT parameter_name,current_value
dbadmin-> FROM configuration_parameters
dbadmin-> WHERE parameter_name = 'DMLTargetDirect'
dbadmin-> ;
parameter_name | current_value
-----------------+---------------
DMLTargetDirect | 0
(1 row)補足
上記のシステムパラメータを設定後、リソースプール「wosdata」のmaxmemorysize が0以外に設定されていることを確認してください。(デフォルトでは、2GB、もしくは利用可能メモリの25%のいずれか小さい値が設定されます)
確認方法や設定の変更方法は後述の参考情報を参照してください。
注意点
・WOSを有効化できるのはVertica 9.3のみであり、Vertica 10.0以降では有効化できません。
・Vertica EonモードはWOSを利用しないアーキテクチャのため、Vertica 9.3であっても上記設定手順の対象外となります。
参考情報
・WOSの使用について(Vertia 9.3以降)
https://www.ashisuto.co.jp/cm/analytics-database/wos-93-later.html
・定義済みリソースプールの種類
https://www.ashisuto.co.jp/cm/analytics-database/resource_pool.html
・ALTER RESOURCE POOL
https://www.vertica.com/docs/9.3.x/HTML/Content/Authoring/SQLReferenceManual/Statements/ALTERRESOURCEPOOL.htm
検証バージョンについて
この記事の内容はVertica 9.3で確認しています。
更新履歴
2021/01/22 本記事を公開