一些Aurora Serverless实例(PostgreSQL)的用户报告说,无法通过设置work_mem参数来配置查询。这是因为Aurora Serverless实例是按需自动缩放的,无法在查询期间为每个查询动态分配内存。但是,您可以通过设置资源调优卷积积分变换量(STIG)配置组的参数来解决此问题。以下是使用AWS CLI设置参数的示例命令:
aws rds modify-db-cluster-parameter-group --db-cluster-parameter-group-name $DB_CLUSTER_PARAMETER_GROUP_NAME --parameters "ParameterName=shared_preload_libraries,ParameterValue=pg_stat_statements" "ParameterName=pg_stat_statements.max,ParameterValue=10000"
aws rds modify-db-instance --db-instance-identifier $DB_INSTANCE_IDENTIFIER --db-parameter-group-name $DB_PARAMETER_GROUP_NAME
这将在参数组中添加pg_stat_statements参数,以便在查询期间捕获执行统计信息,从而帮助您更好地理解查询性能。此外,它将为实例分配更多的缓存空间,以便处理更多的查询。