Voor een zoekopdracht als deze, een gedeeltelijke index alleen niet-gesynchroniseerde rijen bedekken zou het beste werken.
CREATE INDEX ON tbl (id) WHERE sync_done = FALSE;
Voor een dergelijk gebruik kunnen echter andere synchronisatiemethoden de voorkeur hebben om te beginnen:
- Bekijk
LISTEN
/NOTIFY
. - Of gebruik een trigger
in combinatie met dblink
of een buitenlandse datawrapper zoals
postgres_fdw
(bij voorkeur). - Of een van de veel beschikbare replicatiemethoden
.
Streaming-replicatie is toegevoegd met Postgres 9.0 en is steeds populairder geworden.