Explain
- Sequential Scan: This is the simplest way of fetching data from a table: it scans through every page of data sequentially (important fields: Filter, Rows Removed by Filter
- Index Scan: An index scan uses an index to find either a specific row, or all rows matching a predicate. (important fields: Filter, Index Cond, Rows Removed by Filter, Rows Removed by Index Recheck, Scan Direction)
- Bitmap Heap Scan: A bitmap heap scan takes a row location bitmap generated by a Bitmap Index Scan (either directly, or through a series of bitmap set operations via BitmapAnd and BitmapOr nodes) and looks up the relevant data. (important fields: Exact Heap Blocks, Filter, Lossy Heap Blocks, Recheck Cond, Rows Removed by Filter, Rows Removed by Index Recheck)
- Bitmap Index Scan: a bitmap index scan as a middle ground between a sequential scan and an index scan. Like an index scan, it scans an index to determine exactly what data it needs to fetch, but like a sequential scan, it takes advantage of data being easier to read in bulk. (important fields: Index Cond)
For more details, read explain