How PostgreSQL Scans Your Data
To understand how PostgreSQL scans data, we first need to understand how PostgreSQL stores it.
A table is stored as a collection of 8KB pages (by default) on disk.
Each page has a header, an array of item pointers (also called line pointers), and the actual tuple data growing from the bottom up.
Each tuple has its own header containing visibility info: xmin, xmax, cmin/cmax, and infomask bits.

