У меня есть много внешних таблиц, импортированных IMPORT FOREIGN SCHEMA
:
CREATE USER MAPPING FOR myuser
SERVER postgres
OPTIONS ( user 'myuser', password 'mypass');
IMPORT FOREIGN SCHEMA public from server postgres INTO public;
У меня есть много запросов, которые соединяют мои локальные таблицы и внешние таблицы.
Q1: Если я использую pg_prewarm
и помещаю всю таблицу в память, это помогает мне не каждый раз брать эту таблицу по сети.
Q2: Меня беспокоит, будут ли изменения данных на внешнем сервере PostgreSQL видны на моем локальном сервере, если внешняя таблица кэширована.
Пример: core_category
— внешняя таблица
SELECT pg_prewarm(
'core_category',
-- "pre warm" pages of the last 1000 pages for 'mytable'
first_block := (
SELECT pg_relation_size('core_category') / current_setting('block_size')::int4 - 1000
)
);
-- or
SELECT * FROM pg_prewarm('core_category', 'buffer');
pg_prewarm
и внешними таблицами? - person Laurenz Albe   schedule 16.10.2018ERROR: fork "main" does not exist for this relation
. Вам нужно убедиться, что таблица находится в кеше внешнего источника данных. - person Laurenz Albe   schedule 16.10.2018