Aternex

Indexed lookups on a table searched on nearly every keystroke return in about a millisecond.

A drayage logistics operator, operations console with a container lookup that is searched on nearly every keystroke.

Replay the measurement

Full table scan against the trigram index

For a long pattern the index answered in 1.19, 1.52 and 1.59 ms across three runs, against 31.4 ms for the full table scan.

Bars are drawn to scale on one linear axis from 0 to 33.8 ms, the same for both patterns. The replay runs 100 times slower than measured, so 1 ms on screen lasts a tenth of a second.

How each figure was measured
ValueMethodRecordedScope
31.4 msEXPLAIN (ANALYZE, BUFFERS) with index and bitmap scans turned off, so Postgres read the whole table: pattern ILIKE '%7152%', LIMIT 202026-09-30The whole container lookup table
1.19 / 1.52 / 1.59 msSame query shape against the trigram index across three consecutive runs2026-09-30The whole container lookup table

Dates are when each figure was recorded for this site; the work itself is dated in the setting above.

What this does not prove

A sequential scan legitimately wins for very short prefixes: a two-character search under a limit of 20 rows measured 0.4 ms scanning the table against 33.8 ms through the index. The index helps the long patterns a person actually types, and it is not a blanket speedup.

All proof

Want figures like these for your system?

Aternex measures the work before and after, then writes down what the numbers do not show. I reply within two business days.