För en fråga som denna, ett partiellt index Att endast täcka osynkroniserade rader skulle fungera bäst.
CREATE INDEX ON tbl (id) WHERE sync_done = FALSE;
Men för ett användningsfall som detta kan andra synkroniseringsmetoder vara att föredra till att börja med:
- Ta en titt på
LISTEN
/NOTIFY
. - Eller använd en trigger
i kombination med dblink
eller ett utländskt dataomslag som
postgres_fdw
(helst). - Eller en av de många tillgängliga replikeringsmetoderna
.
Streaming Replication lades till med Postgres 9.0 och har blivit allt populärare.