No, si otterrà un errore:
ERROR: cannot create index on foreign table "tablename"
********** Error **********
ERROR: cannot create index on foreign table "tablename"
SQL state: 42809
e ha senso come la query "viaggio "througth the net e recupera i dati dal database originale ogni volta che esegui una query sulla tabella (non memorizzerà i dati da indicizzare).
Quello che puoi fare è usare spiegare verbose per ottenere la query che si sta eseguendo sull'altro lato e indicizzare la tabella remota di conseguenza.
explain verbose select * from schema.foreign_table
"Foreign Scan on schema.foreign_table (cost=25.00..1025.00 rows=1000 width=84)"
" Output: field1, field2, field3
" Remote server startup cost: 25"
" Remote query: SELECT field1, field2, field3 FROM schema.original_table
Spero che questo aiuti. Buona fortuna!