Amazon Redshift パラメータグループを作成します。 - Amazon Redshift

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 コンソールには各パラメータの source は表示されません。source を表示するには、Amazon Redshift API、AWS CLI、または AWS SDK の 1 つを使用する必要があります。

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

デフォルトパラメータ値

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

パラメータ名 詳細情報

auto_analyze

true

Amazon Redshift データベースデベロッパーガイドの「auto_analyze

auto_mv

true

Amazon Redshift データベースデベロッパーガイドの「自動マテリアライズドビュー

datestyle

ISO, MDY

Amazon Redshift データベースデベロッパーガイドの「datestyle

enable_case_sensitive_identifier

false

Amazon Redshift データベースデベロッパーガイドの「enable_case_sensitive_identifier

enable_user_activity_logging

false

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

extra_float_digits

0

Amazon Redshift データベースデベロッパーガイドの「extra_float_digits

max_concurrency_scaling_clusters

1

Amazon Redshift データベースデベロッパーガイドの「max_concurrency_scaling_clusters

query_group

default

Amazon Redshift データベースデベロッパーガイドの「query_group

require_ssl

false

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

search_path

$user, public

Amazon Redshift データベースデベロッパーガイドの「search_path

statement_timeout

0

Amazon Redshift データベースデベロッパーガイドの「statement_timeout

wlm_json_configuration

[{"auto_wlm":true}]

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

use_fips_ssl

false

システムが FIPS に準拠する必要がある場合のみ、FIPS 準拠の SSL モードを有効にします。

注記

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

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

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

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

注記

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

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

注記

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

[Syntax] (構文)

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

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

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

注記

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

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

コンソールを使用してパラメータグループを作成および管理する 詳細については、「コンソールを使用したパラメータグループの管理」を参照してください。