Tabelpartitionering helpt helemaal niet .
Maar ja, er is een goede manier:Upgrade naar een actuele versie van Postgres. Er zijn veel verbeteringen geweest voor GiST-indexen, voor de pg_trgm-module in het bijzonder en voor big data in het algemeen. Zou aanzienlijk sneller moeten zijn met Postgres 10.
Uw zoekopdracht naar "dichtstbijzijnde buur" ziet er correct uit, maar voor een kleine LIMIT
gebruik in plaats daarvan deze equivalente zoekopdracht:
SELECT address, similarity(address, '981 maun st') AS sml
FROM addresses
WHERE address % '981 maun st'
ORDER BY address <-> '981 maun st'
LIMIT 10;