分析 AuroraPostgreSQL 中运行的查询 - Amazon Aurora
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

分析 AuroraPostgreSQL 中运行的查询

Aurora PostgreSQL 仅在摘要级别收集 SQL 统计数据。语句级别没有显示任何统计数据。

Aurora PostgreSQL 的摘要统计数据

要查看 SQL 摘要统计数据,必须加载 pg_stat_statements 库。对于与 PostgreSQL 10 兼容的 Aurora PostgreSQL 数据库集群,默认为加载此库。对于与 PostgreSQL 9.6 兼容的 Aurora PostgreSQL 数据库集群,您可以手动启用此库。要手动启用该库,请在与数据库实例关联的数据库参数组中的 pg_stat_statements 中添加 shared_preload_libraries。然后重启数据库实例。有关更多信息,请参阅“使用数据库参数组和数据库集群参数组”。

注意

性能详情只能收集 pg_stat_activity 中未被截断的查询的统计数据。默认情况下,PostgreSQL 数据库会截断长度超过 1,024 字节的查询。要增加查询大小,请更改与数据库实例关联的数据库参数组中的 track_activity_query_size 参数。更改此参数后,需要重新启动数据库实例。

AuroraPostgreSQL 的每秒摘要统计数据

以下 SQL 摘要统计数据可用于 Aurora PostgreSQL 数据库实例。

指标 单位
db.sql_tokenized.stats.calls_per_sec 每秒调用数
db.sql_tokenized.stats.rows_per_sec 每秒行数
db.sql_tokenized.stats.total_time_per_sec 每秒平均活动执行次数 (AAE)
db.sql_tokenized.stats.shared_blks_hit_per_sec 每秒块命中次数
db.sql_tokenized.stats.shared_blks_read_per_sec 每秒块读取次数
db.sql_tokenized.stats.shared_blks_dirtied_per_sec 每秒损坏的块数
db.sql_tokenized.stats.shared_blks_written_per_sec 每秒块写入次数
db.sql_tokenized.stats.local_blks_hit_per_sec 每秒本地块命中次数
db.sql_tokenized.stats.local_blks_read_per_sec 每秒本地块读取次数
db.sql_tokenized.stats.local_blks_dirtied_per_sec 每秒本地块损坏次数
db.sql_tokenized.stats.local_blks_written_per_sec 每秒本地块写入次数
db.sql_tokenized.stats.temp_blks_written_per_sec 每秒临时写入次数
db.sql_tokenized.stats.temp_blks_read_per_sec 每秒临时读取次数
db.sql_tokenized.stats.blk_read_time_per_sec 每秒平均并发读取次数
db.sql_tokenized.stats.blk_write_time_per_sec 每秒平均并发写入次数

AuroraPostgreSQL 的每次调用摘要统计数据

以下指标提供了 SQL 语句的每次调用统计数据。

指标 单位
db.sql_tokenized.stats.rows_per_call 每个调用的行数
db.sql_tokenized.stats.avg_latency_per_call 每个调用的平均延迟(以毫秒为单位)
db.sql_tokenized.stats.shared_blks_hit_per_call 每个调用的块命中次数
db.sql_tokenized.stats.shared_blks_read_per_call 每个调用的块读取次数
db.sql_tokenized.stats.shared_blks_written_per_call 每个调用的块写入次数
db.sql_tokenized.stats.shared_blks_dirtied_per_call 每个调用损坏的块数
db.sql_tokenized.stats.local_blks_hit_per_call 每个调用的本地块命中次数
db.sql_tokenized.stats.local_blks_read_per_call 每个调用的本地块读取次数
db.sql_tokenized.stats.local_blks_dirtied_per_call 每个调用的本地块损坏次数
db.sql_tokenized.stats.local_blks_written_per_call 每个调用的本地块写入次数
db.sql_tokenized.stats.temp_blks_written_per_call 每个调用的临时块写入次数
db.sql_tokenized.stats.temp_blks_read_per_call 每个调用的临时块读取次数
db.sql_tokenized.stats.blk_read_time_per_call 每个调用的读取时间(以毫秒为单位)
db.sql_tokenized.stats.blk_write_time_per_call 每个调用的写入时间(以毫秒为单位)

有关这些指标的更多信息,请参阅 PostgreSQL 文档中的 pg_stat_statements

查看 AuroraPostgreSQL 的 SQL 统计数据

统计数据可在 Database load(数据库负载)图表的 Top SQL(主要 SQL)选项卡中找到。

要查看 SQL 统计数据

  1. 通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/

  2. 请转至性能详情控制面板。

  3. 选择 SQL 选项卡。

    
								查看正在运行的查询的指标
  4. 通过选择图表右上角的齿轮图标来选择要显示的统计数据。

    以下屏幕截图显示 Aurora PostgreSQL 的首选项。

    
								用于运行 Aurora PostgreSQL 数据库实例查询的指标的首选项