Azure Database for PostgreSQL 灵活服务器中查询存储的最佳做法
适用于: Azure Database for PostgreSQL 灵活服务器
本文概述了在 Azure Database for PostgreSQL 灵活服务器中使用查询存储的最佳做法。
设置最佳查询捕获模式
配置查询存储,使其捕获对你很重要的查询。
pg_qs.query_capture_mode | 方案 |
---|---|
all |
捕获所有查询(顶级或嵌套)及其执行频率和其他统计信息。 识别工作负荷中的新查询。 检测是否使用了即席查询,从而识别用户定义的参数化或自动参数化的机会。 |
top |
仅捕获顶级查询。 顶级查询是客户端直接发出的查询。 这些查询不包括嵌套语句(在过程或函数内执行的语句)。 |
top |
这样配置后,不会捕获任何新查询。 如果已经在想要调查的时间窗口中捕获了查询集,并且不想继续记录任何新查询,则可能需要将其设置为此值。 none 适用于测试和基准标记环境。 由于可能会错过跟踪和优化重要新查询的机会,因此应谨慎使用 none 。 |
注意
pg_qs.query_capture_mode
取代了 pgms_wait_sampling.query_capture_mode
。 如果 pg_qs.query_capture_mode
为 none
,则 pgms_wait_sampling.query_capture_mode
设置不起作用。
保留所需的数据
pg_qs.retention_period_in_days
参数指定查询存储的数据保留期。 超过该期限的记录统计信息将被删除。 还会删除没有被任何统计信息引用的查询的查询文本或查询计划。 默认情况下,查询存储配置为将数据保留 7 天。 避免保留你并不打算使用的历史数据。 若需要将数据保留更长时间,请增大保留期的值。