PG18 colcompress release note

Comparacao da implementacao atual contra os arquivos baseline copy, focada apenas em colcompress. Valores negativos indicam melhoria de tempo.

Texto pronto para changelog

O rerun do benchmark sem citus em PG18 mostrou que a implementacao atual de agregacao vetorizada trouxe ganho claro para colcompress em execucao paralela, com reducoes expressivas de tempo em consultas analiticas de agregacao, filtros com GIN e scans textuais. O melhor resultado apareceu em Q2 SUM/AVG numeric+double, que caiu de 143.981 ms para 33.642 ms (-76.63%), seguido por Q7 JSONB key + GROUP BY (316.957 ms -> 77.908 ms, -75.42%), Q6 JSONB @> GIN (198.173 ms -> 53.563 ms, -72.97%), Q8 array @> GIN (146.534 ms -> 41.573 ms, -71.63%), Q9 LIKE text scan (120.920 ms -> 34.586 ms, -71.40%) e Q10 heavy multi-agg (1929.479 ms -> 706.758 ms, -63.37%).

No caminho serial, o efeito ficou misto: houve melhora relevante em Q2 SUM/AVG numeric+double (126.623 ms -> 92.916 ms, -26.62%) e ganhos menores em Q9 LIKE text scan (-4.62%) e Q6 JSONB @> GIN (-1.62%), enquanto as demais consultas oscilaram levemente para cima, com pior caso em Q1 count(*) (+6.72%). Em paralelo, a unica regressao observada foi Q3 GROUP BY country (10) (154.945 ms -> 164.079 ms, +5.89%), enquanto todo o restante da matriz paralela melhorou.

Tabela completa

Serial

Query Baseline (ms) Atual (ms) Delta
Q1 count(*) 5.058 5.398 +6.72%
Q2 SUM/AVG numeric+double 126.623 92.916 -26.62%
Q3 GROUP BY country (10) 154.970 158.461 +2.25%
Q4 GROUP BY event_type+p95 447.776 476.388 +6.39%
Q5 date range 1 month 23.380 24.154 +3.31%
Q6 JSONB @> GIN 194.282 191.135 -1.62%
Q7 JSONB key + GROUP BY 325.158 334.826 +2.97%
Q8 array @> GIN 137.916 139.113 +0.87%
Q9 LIKE text scan 117.131 111.717 -4.62%
Q10 heavy multi-agg 1888.054 1965.014 +4.08%

Paralelo

Query Baseline (ms) Atual (ms) Delta
Q1 count(*) 21.245 14.018 -34.02%
Q2 SUM/AVG numeric+double 143.981 33.642 -76.63%
Q3 GROUP BY country (10) 154.945 164.079 +5.89%
Q4 GROUP BY event_type+p95 459.492 326.657 -28.91%
Q5 date range 1 month 39.525 31.832 -19.46%
Q6 JSONB @> GIN 198.173 53.563 -72.97%
Q7 JSONB key + GROUP BY 316.957 77.908 -75.42%
Q8 array @> GIN 146.534 41.573 -71.63%
Q9 LIKE text scan 120.920 34.586 -71.40%
Q10 heavy multi-agg 1929.479 706.758 -63.37%