「翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。」
Amazon Aurora PostgreSQL のリファレンス
目次
Amazon Aurora PostgreSQL 個のパラメータ
Amazon Aurora DB クラスターは、他の Amazon RDS DB インスタンスを管理するのと同じ方法で、DB パラメータグループのパラメータを使用して管理します。Amazon Aurora は、複数の DB インスタンスを含む DB クラスターを使用する点が他の DB エンジンとは異なります。その結果、Amazon Aurora DB クラスターの管理に使用するパラメータの中には、クラスター全体に適用されるパラメータと、DB クラスター内の特定の DB インスタンスのみに適用されるパラメータがあります。
クラスターレベルのパラメータは、DB クラスターパラメータグループ単位で管理されます。インスタンスレベルのパラメータは、DB パラメータグループ単位で管理されます。Aurora PostgreSQL DB クラスター内の各 DB インスタンスは PostgreSQL データベースエンジンと互換性がありますが、一部の PostgreSQL データベースエンジンパラメータは、クラスターレベルで適用する必要があり、DB クラスターパラメータグループを使用して管理されます。クラスターレベルのパラメータは、Aurora PostgreSQL DB クラスター内の DB インスタンス用の DB パラメータグループには含まれていません。このトピックで後ほど一覧を示します。
クラスターレベルとインスタンスレベルのパラメータは、いずれも Amazon RDS コンソール、AWS CLI、または Amazon RDS API を使用して表示できます。たとえば、DB クラスターパラメータグループのクラスターレベルのパラメータを表示するには、AWS CLI の describe-db-cluster-parameters コマンドを使用します。DB クラスター内の DB インスタンスに対する DB パラメータグループのインスタンスレベルのパラメータを表示するには、AWS CLI の describe-db-parameters コマンドを使用します。
クラスターレベルとインスタンスレベルのパラメータは、いずれも Amazon RDS コンソール、AWS CLI、または Amazon RDS API を使用して管理できます。クラスターレベルのパラメータとインスタンスレベルのパラメータでは、管理のためのコマンドが別です。以下に例を示します。
-
DB クラスターパラメータグループのクラスターレベルのパラメータを管理するには、AWS CLI の modify-db-cluster-parameter-group コマンドを使用します。
-
DB クラスター内の DB インスタンスに対する DB パラメータグループのインスタンスレベルのパラメータを管理するには、AWS CLI の modify-db-parameter-group コマンドを使用します。
パラメータグループの詳細については、「DB パラメータグループおよび DB クラスターパラメータグループを使用する」を参照してください。
Aurora PostgreSQL クラスターレベルのパラメータ
次の表は、Aurora PostgreSQL DB クラスター全体に適用されるすべてのパラメータを示しています。
パラメータ名 | 変更可能 |
---|---|
ansi_constraint_trigger_ordering |
はい |
ansi_force_foreign_key_checks |
はい |
ansi_qualified_update_set_target |
はい |
apg_ccm_enabled
|
はい |
archive_command |
いいえ |
archive_timeout
|
いいえ |
array_nulls
|
はい |
autovacuum
|
はい |
autovacuum_analyze_scale_factor
|
はい |
autovacuum_analyze_threshold
|
はい |
autovacuum_freeze_max_age
|
はい |
autovacuum_max_workers
|
はい |
autovacuum_multixact_freeze_max_age
|
はい |
autovacuum_naptime
|
はい |
autovacuum_vacuum_cost_delay
|
はい |
autovacuum_vacuum_cost_limit
|
はい |
autovacuum_vacuum_scale_factor
|
はい |
autovacuum_vacuum_threshold
|
はい |
autovacuum_work_mem
|
はい |
backslash_quote
|
はい |
client_encoding
|
はい |
data_directory
|
いいえ |
datestyle
|
はい |
default_tablespace
|
はい |
default_with_oids
|
はい |
extra_float_digits
|
はい |
huge_pages |
いいえ |
intervalstyle
|
はい |
lc_monetary
|
はい |
lc_numeric
|
はい |
lc_time
|
はい |
log_autovacuum_min_duration
|
はい |
max_prepared_transactions |
はい |
password_encryption
|
いいえ |
max_standby_streaming_delay
|
PostgreSQL 11でははい、以前の PostgreSQL バージョンではいいえ |
port
|
いいえ |
rds.enable_plan_management
|
はい |
rds.extensions |
いいえ |
rds.force_autovacuum_logging_level
|
はい |
rds.force_ssl
|
はい |
rds.global_db_rpo |
はい |
rds.logical_replication |
はい |
rds.restrict_password_commands |
はい |
server_encoding
|
いいえ |
ssl
|
はい |
ssl_max_protocol_version |
はい |
ssl_min_protocol_version |
はい |
synchronous_commit
|
はい |
timezone
|
はい |
track_commit_timestamp
|
はい |
vacuum_cost_delay |
はい |
vacuum_cost_limit |
はい |
vacuum_cost_page_hit |
はい |
vacuum_cost_page_miss |
はい |
vacuum_defer_cleanup_age
|
はい |
vacuum_freeze_min_age
|
はい |
vacuum_freeze_table_age
|
はい |
vacuum_multixact_freeze_min_age
|
はい |
vacuum_multixact_freeze_table_age
|
はい |
wal_buffers
|
はい |
wal_sender_timeout |
あり |
Aurora PostgreSQL インスタンスレベルのパラメータ
次の表は、Aurora PostgreSQL DB クラスターの特定の DB インスタンスに適用されるパラメータの一覧です。
パラメータ名 | 変更可能 |
---|---|
apg_enable_not_in_transform |
はい |
apg_enable_remove_redundant_inner_joins |
はい |
apg_enable_semijoin_push_down
|
はい |
apg_plan_mgmt.capture_plan_baselines |
はい |
apg_plan_mgmt.max_databases |
はい |
apg_plan_mgmt.max_plans |
あり |
apg_plan_mgmt.pgss_min_calls (廃止)
|
はい |
apg_plan_mgmt.pgss_min_mean_time_ms (廃止)
|
はい |
apg_plan_mgmt.pgss_min_stddev_time_ms (廃止)
|
はい |
apg_plan_mgmt.pgss_min_total_time_ms (廃止)
|
はい |
apg_plan_mgmt.plan_retention_period |
はい |
apg_plan_mgmt.unapproved_plan_execution_threshold |
はい |
apg_plan_mgmt.use_plan_baselines |
はい |
application_name
|
はい |
authentication_timeout |
はい |
auto_explain.log_analyze |
はい |
auto_explain.log_buffers |
はい |
auto_explain.log_format |
はい |
auto_explain.log_min_duration |
はい |
auto_explain.log_nested_statements |
はい |
auto_explain.log_timing |
はい |
auto_explain.log_triggers |
はい |
auto_explain.log_verbose |
はい |
auto_explain.sample_rate |
はい |
backend_flush_after |
はい |
bgwriter_flush_after |
はい |
bytea_output |
はい |
check_function_bodies |
はい |
checkpoint_flush_after |
はい |
checkpoint_timeout |
いいえ |
client_min_messages |
はい |
config_file |
いいえ |
constraint_exclusion |
はい |
cpu_index_tuple_cost |
はい |
cpu_operator_cost |
はい |
cpu_tuple_cost |
はい |
cursor_tuple_fraction |
はい |
db_user_namespace |
いいえ |
deadlock_timeout |
はい |
debug_pretty_print |
はい |
debug_print_parse |
はい |
debug_print_plan |
はい |
debug_print_rewritten |
はい |
default_statistics_target |
はい |
default_transaction_deferrable |
はい |
default_transaction_isolation |
はい |
default_transaction_read_only |
はい |
effective_cache_size |
はい |
effective_io_concurrency |
いいえ |
enable_bitmapscan |
はい |
enable_hashagg |
はい |
enable_hashjoin |
はい |
enable_indexonlyscan |
はい |
enable_indexscan |
はい |
enable_material |
はい |
enable_mergejoin |
はい |
enable_nestloop |
はい |
enable_seqscan |
はい |
enable_sort |
はい |
enable_tidscan |
はい |
escape_string_warning |
はい |
exit_on_error |
いいえ |
force_parallel_mode |
はい |
from_collapse_limit |
はい |
geqo |
はい |
geqo_effort |
はい |
geqo_generations |
はい |
geqo_pool_size |
はい |
geqo_seed |
はい |
geqo_selection_bias |
はい |
geqo_threshold |
はい |
gin_fuzzy_search_limit |
はい |
gin_pending_list_limit |
はい |
hba_file |
いいえ |
hot_standby_feedback |
いいえ |
ident_file |
いいえ |
idle_in_transaction_session_timeout |
はい |
join_collapse_limit |
はい |
lc_messages |
はい |
listen_addresses |
いいえ |
lo_compat_privileges |
いいえ |
log_connections |
はい |
log_destination |
はい |
log_directory |
いいえ |
log_disconnections |
はい |
log_duration |
はい |
log_error_verbosity |
はい |
log_executor_stats |
はい |
log_file_mode |
いいえ |
log_filename |
はい |
log_hostname |
はい |
log_line_prefix |
いいえ |
log_lock_waits |
はい |
log_min_duration_statement |
はい |
log_min_error_statement |
はい |
log_min_messages |
はい |
log_parser_stats |
はい |
log_planner_stats |
はい |
log_replication_commands |
はい |
log_rotation_age |
はい |
log_rotation_size |
はい |
log_statement |
はい |
log_statement_stats |
はい |
log_temp_files |
はい |
log_timezone |
いいえ |
log_truncate_on_rotation |
いいえ |
logging_collector |
いいえ |
maintenance_work_mem |
はい |
max_connections |
はい |
max_files_per_process |
はい |
max_locks_per_transaction |
はい |
max_replication_slots |
はい |
max_stack_depth |
はい |
max_standby_archive_delay |
いいえ |
max_standby_streaming_delay |
PostgreSQL 11でははい、以前の PostgreSQL バージョンではいいえ |
max_wal_senders |
はい |
max_worker_processes |
はい |
min_parallel_relation_size |
はい |
old_snapshot_threshold |
はい |
operator_precedence_warning |
はい |
parallel_setup_cost |
はい |
parallel_tuple_cost |
はい |
pg_hint_plan.debug_print |
はい |
pg_hint_plan.enable_hint |
はい |
pg_hint_plan.enable_hint_table |
はい |
pg_hint_plan.message_level |
はい |
pg_hint_plan.parse_messages |
はい |
pg_stat_statements.max |
はい |
pg_stat_statements.save |
はい |
pg_stat_statements.track |
はい |
pg_stat_statements.track_utility |
はい |
pgaudit.log |
はい |
pgaudit.log_catalog |
はい |
pgaudit.log_level |
はい |
pgaudit.log_parameter |
はい |
pgaudit.log_relation |
はい |
pgaudit.log_statement_once |
はい |
pgaudit.role |
はい |
postgis.gdal_enabled_drivers |
はい |
quote_all_identifiers |
はい |
random_page_cost |
はい |
rds.force_admin_logging_level |
はい |
rds.log_retention_period |
はい |
rds.rds_superuser_reserved_connections |
はい |
rds.superuser_variables |
いいえ |
replacement_sort_tuples |
はい |
restart_after_crash |
いいえ |
row_security |
はい |
search_path |
はい |
seq_page_cost |
はい |
session_replication_role |
はい |
shared_buffers |
はい |
shared_preload_libraries |
はい |
sql_inheritance |
はい |
ssl_ca_file |
いいえ |
ssl_cert_file |
いいえ |
ssl_ciphers |
いいえ |
ssl_key_file |
いいえ |
standard_conforming_strings |
はい |
statement_timeout |
はい |
stats_temp_directory |
いいえ |
superuser_reserved_connections |
いいえ |
synchronize_seqscans |
はい |
syslog_facility |
いいえ |
tcp_keepalives_count |
はい |
tcp_keepalives_idle |
はい |
tcp_keepalives_interval |
はい |
temp_buffers |
はい |
temp_tablespaces |
はい |
track_activities |
はい |
track_activity_query_size |
はい |
track_counts |
はい |
track_functions |
はい |
track_io_timing |
はい |
transaction_deferrable |
はい |
transaction_read_only |
はい |
transform_null_equals |
はい |
unix_socket_directories |
いいえ |
unix_socket_group |
いいえ |
unix_socket_permissions |
いいえ |
update_process_title |
はい |
wal_receiver_status_interval |
はい |
wal_receiver_timeout |
はい |
work_mem |
はい |
xmlbinary |
はい |
xmloption |
あり |
Amazon Aurora PostgreSQL のイベント
以下は、Aurora PostgreSQL の代表的な待機イベントです。
- BufferPin:BufferPin
-
この待機イベントの場合、他のいずれのセッションもデータバッファを調べることができない間、セッションはそのバッファにアクセスするために待機しています。該当するバッファからデータを最後に読み取ったオープンカーソルを他のプロセスが保持している場合、バッファピンの待機が長引く可能性があります。
- Client:ClientRead
-
この待機イベントの場合、セッションはアプリケーションクライアントからデータを受信しています。この待機は、COPY ステートメントを使用したバルクデータロード中や、クライアントとデータベース間で多くのラウンドトリップを使用して Aurora にデータを渡すアプリケーションで、よく発生する可能性があります。トランザクションあたりのクライアント読み取りの待機数が多い場合、パラメータの受け渡しなどのラウンドトリップが多すぎる可能性があります。この数とトランザクションあたりの想定されるステートメント数を比較する必要があります。
- IO:DataFilePrefetch
-
この待機イベントの場合、セッションは Aurora ストレージからの非同期プリフェッチを待機しています。
- IO:DataFileRead
-
この待機イベントの場合、セッションは Aurora ストレージからデータを読み取っています。これは入出量の多いワークロードでは一般的な待機イベントである可能性があります。他の SQL ステートメントと比較してこの待機イベントの比較的大部分を表示する SQL ステートメントが、大量のデータの読み取りが必要になる非効率的なクエリプランを使用している可能性があります。
- IO:XactSync
-
この待機イベントの場合、セッションは COMMIT または ROLLBACK を発行し、現在のトランザクションの変更の保持を要求しています。Aurora は Aurora ストレージによる保持の確認を待機しています。
この待機は、システムでのコミットアクティビティのレートが非常に高い場合に最も多く発生します。トランザクションをバッチでコミットするようにアプリケーションを変更することで、この待機を軽減できる場合があります。DB 負荷が DB インスタンスの仮想 CPU (vCPU) 数を超えると、この待機は CPU の待機と時間的に重なる場合があります。この場合、ストレージの永続化は CPU を集中的に使用するデータベースワークロードとの間で CPU を奪い合うことになります。この対策としては、データベースワークロードを減らすか、DB インスタンスをスケールアップして vCPU 数を増やすことができます。
- Lock:transactionid
-
この待機イベントの場合、セッションは別のセッションで変更されたデータを変更しようとして、別のセッションのトランザクションがコミットまたはロールバックされるのを待機しています。ブロックセッションおよび待機セッションは、pg_locks ビューで調査できます。
- LWLock:buffer_content
-
この待機イベントの場合、セッションはデータページをメモリに読み取るか書き込むために待機しており、そのデータページは別のセッションで書き込むためにロックされています。多くのセッションで同じデータを頻繁に更新すると、書き込みの競合が 1 つのページ (ホットページ) に集中するため、この待機イベントが発生する場合があります。外部キー制約を使いすぎると、ロック期間が長くなり、競合が増えることになります。
buffer_content
待機が多いワークロードについて、外部キー制約の使用状況を調べ、これらの制約が必要かどうかを確認する必要があります。または、親テーブルの fillfactor を減らすと、キーがブロック全体に分散され、ページ上の競合を削減することができます。 - LWLock:SubtransControlLock
-
この待機イベントの場合、セッションはトランザクションとサブトランザクションの間の親子関係を参照または操作しています。サブトランザクションの使用でよく見られる 2 つの原因は、保存ポイントと PL/pgSQL 例外ブロックです。サブトランザクション内から同時に更新しているデータに対して、同時に大量のクエリを実行すると、待機イベントが発生する可能性があります。保存ポイントと例外ブロックの使用を削減できるかどうか、または更新対象の行に対する同時クエリを削減できるかどうか、調査する必要があります。
PostgreSQL の待機イベントの詳細なリストについては、PostgreSQL の wait-event の表