~/talk

Multi-Entry Generalized Search Trees

Talkat PGConf.dev 2024 · 2024-05-28..05-31· [databases]
links:none on file
slides:none on file

PostgreSQL extensions implement MGiST/MSP-GiST to split each tuple into multiple index entries (like GIN but for GiST/SP-GiST) and add an extract_value method plus duplication handling; applied to multi-range types and MobilityDB trajectories. Index size grows (about 3× in one test) but reduces false positives and rechecks, giving about 20× speedup on a multi-range contains query (1.7 ms → 0.08 ms) and roughly 10× on trajectory spatial queries; extract_query support and multicolumn coordination remain work in progress, code on GitHub.

AI-written summary · about

  1. 0:00Introduction and background
  2. 1:30Postgres index overview
  3. 4:00Multi-range types and limitations
  4. 8:57Mist index design explained
  5. 13:09Performance benefits of Mist
  6. 16:39When Mist outperforms Gist
  7. 17:25Mobility DB trajectories
  8. 21:46Trajectory indexing with Mist
  9. 24:18Other data types benefiting from Mist
  10. 28:59Extract query and path types
  11. 31:47Implementation and extensions
  12. 37:12Q&A session
~/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.