Technologies/PostgreSQL/n_live_tup
PostgreSQLPostgreSQLMetric

n_live_tup

Live row estimate
Dimensions:None
Available on:DatadogDatadog (1)Native (1)PrometheusPrometheus (1)
Interface Metrics (3)
DatadogDatadog
Enabled with `relations`. The number of live rows on the toast table of a relation. This metric is tagged with db, schema, table.
Dimensions:None
Native
Estimated number of live rows
Dimensions:None
PrometheusPrometheus
Estimated number of live rows
Dimensions:None

Technical Annotations (17)

Configuration Parameters (6)
autovacuum_vacuum_scale_factorrecommended: 0.01 for high-churn tables
Fraction of table size that triggers autovacuum (default 0.2)
autovacuum_analyze_scale_factorrecommended: 0.005
Fraction of table size that triggers auto-analyze
autovacuum_vacuum_cost_delayrecommended: 2
Delay between vacuum cost limit checks
autovacuum_max_workersrecommended: 5-6 for high-write workloads
Number of parallel autovacuum workers (default 3)
autovacuum_vacuum_thresholdrecommended: 50
minimum dead tuples before vacuum triggers; keep at default for most cases
autovacuum_vacuum_cost_limitrecommended: 1000
Higher I/O budget per cycle allows vacuum to complete faster (default 200)
CLI Commands (6)
VACUUM ANALYZE table_name;remediation
SELECT schemaname, relname AS table_name, n_live_tup AS live_tuples, n_dead_tup AS dead_tuples, ROUND(n_dead_tup::numeric / NULLIF(n_live_tup, 0) * 100, 2) AS dead_pct, last_autovacuum, last_autoanalyze, autovacuum_count, autoanalyze_count FROM pg_stat_user_tables ORDER BY n_dead_tup DESC LIMIT 20;diagnostic
ALTER TABLE events SET (autovacuum_vacuum_threshold = 1000, autovacuum_vacuum_scale_factor = 0.005, autovacuum_analyze_threshold = 500, autovacuum_analyze_scale_factor = 0.005, autovacuum_vacuum_cost_delay = 0, autovacuum_vacuum_cost_limit = 3000);remediation
SELECT schemaname, relname AS table_name, n_dead_tup AS dead_tuples, n_live_tup AS live_tuples, last_autovacuum, last_autoanalyze, CASE WHEN n_live_tup > 0 THEN round(100.0 * n_dead_tup / n_live_tup, 1) ELSE 0 END AS dead_tuple_ratio FROM pg_stat_user_tables WHERE n_dead_tup > 500 ORDER BY n_dead_tup DESC LIMIT 15;diagnostic
ALTER TABLE sim_events SET (autovacuum_vacuum_scale_factor = 0.02, autovacuum_vacuum_threshold = 500, autovacuum_vacuum_cost_delay = 2, autovacuum_vacuum_cost_limit = 1000);remediation
SELECT relname, reloptions FROM pg_class WHERE relname = 'sim_events';diagnostic
Technical References (5)
pg_stat_user_tablescomponentMVCCconceptdead tuplesconcepttable bloatconceptHOT updatesconcept
Related Insights (3)
High dead tuple ratio causes table bloat and slow querieswarning
High dead tuple percentage causes query degradation and cache inefficiencywarning
Autovacuum triggers too late on large tables causing bloat and query degradationwarning