powa

PostgreSQL 工作负载分析器-核心

概览

扩展包名版本分类许可证语言
powa5.1.1STATPostgreSQLPython
ID扩展名BinLibLoadCreateTrustReloc模式
6870powapublic
相关扩展plpgsql pg_stat_statements btree_gist pg_stat_kcache pg_qualstats pg_wait_sampling hypopg plprofiler pg_profile pg_track_settings btree_gin

pgdg missing el10.pg17

版本

类型仓库版本PG 大版本包名依赖
EXTPGDG5.1.11817161514powaplpgsql, pg_stat_statements, btree_gist
RPMPGDG5.1.01817161514powa_$v-
DEBPGDG5.1.11817161514postgresql-$v-powa-
OS / PGPG18PG17PG16PG15PG14
el8.x86_64
el8.aarch64
el9.x86_64
el9.aarch64
el10.x86_64PGDG MISS
el10.aarch64PGDG MISS
d12.x86_64
PGDG 5.1.1
PGDG 5.1.1
PGDG 5.1.1
PGDG 5.1.1
PGDG 5.1.1
d12.aarch64
PGDG 5.1.1
PGDG 5.1.1
PGDG 5.1.1
PGDG 5.1.1
PGDG 5.1.1
d13.x86_64
PGDG 5.1.1
PGDG 5.1.1
PGDG 5.1.1
PGDG 5.1.1
PGDG 5.1.1
d13.aarch64
PGDG 5.1.1
PGDG 5.1.1
PGDG 5.1.1
PGDG 5.1.1
PGDG 5.1.1
u22.x86_64
u22.aarch64
u24.x86_64
u24.aarch64

安装

您可以直接安装 powa 扩展包的预置二进制包,首先确保 PGDG 仓库已经添加并启用:

pig repo add pgdg -u          # 添加 PGDG 仓库并更新缓存

使用 pig 或者是 apt/yum/dnf 安装扩展:

pig install powa;          # 当前活跃 PG 版本安装
pig ext install -y powa -v 18  # PG 18
pig ext install -y powa -v 17  # PG 17
pig ext install -y powa -v 16  # PG 16
pig ext install -y powa -v 15  # PG 15
pig ext install -y powa -v 14  # PG 14
dnf install -y powa_18       # PG 18
dnf install -y powa_17       # PG 17
dnf install -y powa_16       # PG 16
dnf install -y powa_15       # PG 15
dnf install -y powa_14       # PG 14
apt install -y postgresql-18-powa   # PG 18
apt install -y postgresql-17-powa   # PG 17
apt install -y postgresql-16-powa   # PG 16
apt install -y postgresql-15-powa   # PG 15
apt install -y postgresql-14-powa   # PG 14

创建扩展

CREATE EXTENSION powa CASCADE;  -- 依赖: plpgsql, pg_stat_statements, btree_gist

用法

powa: PostgreSQL 工作负载分析器

PoWA 是一个工作负载分析框架,收集性能统计信息并通过 Web UI 提供实时图表。核心扩展(powa-archivist)从多个统计扩展中采集快照。

架构

PoWA 由几个组件组成:

  • powa-archivist:收集和存储统计信息的 PostgreSQL 扩展
  • powa-web:用于可视化性能数据的 Web UI
  • pg_stat_statements:必需,提供查询统计
  • pg_qualstats:可选,提供谓词统计和索引建议
  • pg_stat_kcache:可选,提供操作系统级指标(CPU、I/O)
  • pg_wait_sampling:可选,提供等待事件采样

采集快照

PoWA 定期从所有已注册的扩展中采集统计快照:

-- 手动采集快照
SELECT powa_take_snapshot();

-- 检查快照状态
SELECT * FROM powa_snapshot_metas;

配置

-- 注册统计扩展(在 CREATE EXTENSION 时自动完成)
SELECT powa_register_server(hostname => 'localhost', port => 5432);

-- 配置快照间隔和保留策略
ALTER EXTENSION powa UPDATE;

关键表和视图

-- 查看收集的查询统计
SELECT * FROM powa_statements;

-- 查看快照历史
SELECT * FROM powa_snapshot_metas;

Web UI

PoWA Web 界面(单独安装)提供:

  • 实时查询性能仪表板
  • 按查询下钻及计划详情
  • 基于 pg_qualstats 的索引建议
  • 等待事件分析
  • 系统资源使用图表

文档:powa.readthedocs.io


最后修改 2026-03-14: update extension metadata (953cbd0)