~/talk

Rules of Indexing in PostgreSQL

Talkat Postgres Conference Orlando 2025 · 2025-03-18..03-21· [databases]
links:none on file
slides:none on file

Complete walkthrough of PostgreSQL index types with concrete numbers and demos: B‑Tree sort keys cut an example query from 84ms to ~66ms and NULLS FIRST saves ~9ms (~40%); INCLUDE columns turn a 0.15s plan into a 0.05s index‑only scan; a filtered index reduces work by one third and shrinks index size; hash is smaller and faster for single‑column equality (0.047s vs 0.06s); BRIN on sequential data drops a 21MB index to ~48KB and cuts time 144ms→109ms; GIN trigram hits 8–17ms; bloom halves index size; vector: HNSW build 35s/293MB vs tree‑like scan 2s/12MB and query 107ms→57ms, returning 25k vs 997 candidates.

AI-written summary · about

  1. 0:00Welcome
  2. 1:25PostgreSQL index types
  3. 2:48B-tree default choice
  4. 5:14Optimizing B-tree sort
  5. 8:49Including columns in B-tree
  6. 14:36Filtered indexes
  7. 17:10Function-based indexes
  8. 17:53Hash indexes trade-offs
  9. 21:29GIN for text/JSON
  10. 25:39BRIN for sequential data
  11. 28:29Bloom indexes
  12. 31:06Vector indexes for AI
  13. 36:07Summary & Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.