メニュー
Amazon Redshift
管理ガイド (API Version 2012-12-01)

Amazon Redshift パラメーターグループ

概要

Amazon Redshift で、作成する各クラスターにパラメーターグループを関連付けます。パラメーターグループは、クラスター内で作成したデータベースに適用されるパラメーターのグループです。これらのパラメーターは、クエリのタイムアウトやデータスタイルなどのデータベース設定を定義します。

パラメーターグループについて

各パラメーターグループには、データベースの設定を定義する複数のパラメーターがあります。使用できるパラメーターのリストは、パラメーターグループが属しているパラメーターグループファミリーによって異なります。パラメーターグループファミリーとは、パラメーターグループ内のパラメーターが適用される Amazon Redshift エンジンのバージョンのことです。パラメーターグループファミリー名の形式は、redshift-version (version はエンジンバージョン) です。たとえば、エンジンの現在のバージョンは redshift-1.0 です。

Amazon Redshift は、パラメーターグループファミリーごとに 1 つのデフォルトパラメーターグループを提供しています。デフォルトパラメーターグループにはパラメーターごとのプリセット値があり、これを変更することはできません。デフォルトパラメーターグループ名の形式は default.parameter_group_family (parameter_group_family はパラメーターグループが属するエンジンのバージョン) です。たとえば、redshift-1.0 バージョンのデフォルトパラメーターグループの名前は default.redshift-1.0 です。

注記

現時点では、redshift-1.0 が Amazon Redshift エンジンの唯一のバージョンです。したがって、default.redshift-1.0 が唯一のデフォルトパラメーターグループです。

デフォルトパラメーターグループとは異なるパラメーター値を使用するには、カスタムパラメーターグループを作成してクラスターを関連付ける必要があります。カスタムパラメーターグループ内のパラメーター値は、最初はデフォルトパラメーターグループ内のものと同じです。これらの値は Amazon Redshift によってプリセットされているため、すべてのパラメーターの最初の sourceengine-default です。パラメーター値を変更した後、sourceuser に変わり、値がデフォルト値から変更されたことを示します。

注記

Amazon Redshift console には各パラメーターの source は表示されません。source を表示するには、Amazon Redshift API、AWS CLI、またはいずれかの AWS SDK を使用する必要があります。

ユーザーが作成したパラメーターグループについては、パラメーター値はいつでも変更できます。またはすべてのパラメーター値をデフォルトにリセットすることもできます。また、異なるパラメーターグループをクラスターに関連付けることもできます。既にクラスターに関連付けられているパラメーターグループ内のパラメーター値を変更する、または異なるパラメーターグループをクラスターに関連付ける場合、更新されたパラメーター値が有効になるようにクラスターを再起動しなければならない可能性もあります。クラスターに障害が発生し、Amazon Redshift により再起動された場合、変更内容はそのときに適用されます。詳細については、「WLM の動的プロパティと静的プロパティ」を参照してください。

デフォルトパラメーター値

次の表はデフォルトパラメーター値の一覧とともに、各パラメーターの詳細な情報へのリンクを示しています。これらは redshift-1.0 パラメーターグループファミリーのデフォルト値です。

パラメーター名 詳細情報

analyze_threshold_percent

10

Amazon Redshift Database Developer Guideの「analyze_threshold_percent

datestyle

ISO, MDY

Amazon Redshift Database Developer Guideの「datastyle

enable_user_activity_logging

false

このガイドの「データベース監査ログ作成

extra_float_digits

0

Amazon Redshift Database Developer Guideの「extra_float_digits

query_group

デフォルト

Amazon Redshift Database Developer Guideの「query_group

require_ssl

false

このガイドの「接続のセキュリティオプションを設定する

search_path

$user, public

Amazon Redshift Database Developer Guideの「search_path

statement_timeout

0

Amazon Redshift Database Developer Guideの「statement_timeout

wlm_json_configuration

[{"query_concurrency":5}]

このガイドの「ワークロード管理の設定

注記

max_cursor_result_set_size パラメーターは廃止されました。カーソル結果セットのサイズの詳細については、Amazon Redshift Database Developer Guideの「カーソルの制約」を参照してください。

データベースで SET コマンドを使用して一時的にパラメーターを上書きすることもできます。SET コマンドは、現在のセッションの期間だけパラメーターを上書きします。前の表で示されたパラメーターに加えて、データベースで wlm_query_slot_count を設定することで、一時的にスロットカウントを調整することもできます。wlm_query_slot_count パラメーターは、パラメーターグループでの設定に使用することはできません。スロットカウントの調整の詳細については、Amazon Redshift Database Developer Guideの「wlm_query_slot_count」を参照してください。一時的に他のパラメーターを上書きする方法の詳細については、Amazon Redshift Database Developer Guideの「サーバー設定の変更」を参照してください。

AWS CLI によるパラメーター値の設定

AWS CLI を使用して Amazon Redshift パラメーターを設定するには、特定のパラメーターグループの modify-cluster-parameter-group コマンドを使用します。parameter-group-name で、変更するパラメーターグループを指定します。parameters パラメーター (modify-cluster-parameter-group コマンドのパラメーター) を使用して、パラメーターグループで変更する各パラメーターの名前と値のペアを指定します。

注記

AWS CLI を使用して wlm_json_configuration パラメーターを設定する際は、特別な考慮事項があります。このセクションの例は、wlm_json_configuration を除くすべてのパラメーターに適用されます。AWS CLI による wlm_json_configuration の設定の詳細については、「ワークロード管理の設定」を参照してください。

パラメーター値を変更した後は、変更したパラメーターグループに関連付けられているクラスターを再起動する必要があります。値が適用中の間、ParameterApplyStatus のクラスター状態は applying と表示され、値の適用が完了すると pending-reboot になります。再起動後、クラスター内のデータベースは新しいパラメーター値の使用を開始します。クラスターの再起動の詳細については、「クラスターの再起動」を参照してください。

注記

wlm_json_configuration パラメーターに含まれる一部のプロパティは動的プロパティであり、関連付けられたクラスターを再起動しなくても変更が適用されます。動的プロパティと静的プロパティの詳細については、「WLM の動的プロパティと静的プロパティ」を参照してください。

構文

次の構文は、modify-cluster-parameter-group コマンドを使用してパラメーターを設定する方法を示しています。parameter_nameparameter_value は、実際に変更するパラメーターとそのパラメーターの値に置き換えます。複数のパラメーターを同時に変更する場合は、パラメーターと値の各セットをスペースで区切ります。

Copy
aws redshift modify-cluster-parameter-group --parameters ParameterName=parameter_name,ParameterValue=parameter_value

次の例は、myclusterparametergroup パラメーターグループの statement_timeout パラメーターと enable_user_activity_logging パラメーターを設定する方法を示しています。

注記

読みやすくするため、例は複数行で表示されていますが、実際の AWS CLI では 1 行になります。

Copy
aws redshift modify-cluster-parameter-group --parameter-group-name myclusterparametergroup --parameters ParameterName=statement_timeout,ParameterValue=20000 ParameterName=enable_user_activity_logging,ParameterValue=true