是否可以按表确定每秒写入的 Postgres 写入速率?



在PostgreSQL中,是否可以获得对表的写入的近似值作为时间度量?

具体来说,我正在寻找给定表的近似"写入/秒"。 我知道我可以从统计收集器获取总写入(插入、更新、删除(,但没有明确定义统计"开始"的时间,以便我可以确定速率。

是否有其他表可以应用于此计算?

SELECT relname, idx_tup_fetch + seq_tup_read as TotalReads,
n_tup_ins + n_tup_upd + n_tup_del as TotalWrites, 
-- (n_tup_ins + n_tup_upd + n_tup_del) / magical_seconds_column_that_doesnt_exist as WritesPerSecond
*
from pg_stat_all_tables
order by totalwrites desc

PostgreSQL 本身没有这样的功能。您将定期拍摄统计信息表的快照并自行计算值。

请注意,使用track_io_timing = on,您还将获得 I/O 统计信息。

最新更新