Transaction ID wraparound: a walk on the wild side
by
Laurenz Albe |
01.2023 Most people are aware of transaction ID wraparound. The concept has been well explained in Hans' article, so I […]
VACUUM does not shrink my PostgreSQL table
Did you ever wonder why VACUUM does not shrink PostgreSQL data files? Learn all the most useful secrets of VACUUM.
ALTER TABLE ... ADD COLUMN … done right in PostgreSQL
Running ALTER TABLE … ADD COLUMN can cause serious issues in production. Understand how to cleanly change PostgreSQL data structures.
Cleaning up a large number of BLOBs in PostgreSQL
Basically, there are two ways to delete BLOBs (binary large objects):Change the PostgreSQL configuration or delete the BLOBs in chunks.
How the PostgreSQL query optimizer works
Get insight into how the PostgreSQL optimizer works and how it speeds up queries. Find out about anti-join & from_collapse_limit.
PostgreSQL: What is a checkpoint?
How to use checkpoints and checkpoint tuning, and how PostgreSQL writes data, database internals explained.
Is UPDATE the same as DELETE + INSERT in PostgreSQL?
by
Laurenz Albe |
12.2020 Introduction We know that PostgreSQL does not update a table row in place. Rather, it writes a new version […]
effective_cache_size: A practical example
Few people know what effective_cache_size really does in PostgreSQL. Let me share some more insights and a practical example.
Deduplication in PostgreSQL v13 B-tree indexes
by
Laurenz Albe |
06.2020 A while ago, I wrote about B-tree improvements in v12. PostgreSQL v13, which will come out later this year, […]
How PostgreSQL estimates parallel queries
How to understand parallel queries - estimate the cost of sequential scans and parallel sequential scans in PostgreSQL