Выберите из PostgreSQL 11 упаковщик внешних данных (для удаленного PG 9.5) в 15 раз медленнее - PullRequest
0 голосов
/ 20 сентября 2019

Выбор из внешнего упакованного представления выполняется в 15+ раз дольше, чем прямой выбор в исходной базе данных.

Попытка добавления USE_REMOTE_ESTIMATE 'true' на внешний сервер.Также попытался полностью убить предложение where (запекать его в представлении), так что я знаю, что нет проблем с предикатом / агрегированием при нажатии!

-- On source system (massively complex union of 200 schemas), AWS RDS PG 9.5
explain verbose select * from stats where company_id = 26531;
-- [ 2125 lines of stuff!]
select * from stats where company_id = 26531;
-- completes in 1 - 2.5 seconds

-- From FDW (entirely different AWS RDS instance w/ PG 11)
explain verbose 
select * from remoteschema.stats where company_id = 26531;
/*
Foreign Scan on stats  (cost=311780.75..323299.91 rows=306770 width=394)
Output: columns
Remote SQL: SELECT columns FROM remoteschema.stats WHERE ((company_id = 26531))
*/
select * from remoteschema.stats where company_id = 26531;
-- completes in 20 seconds

Нет промежуточных результатов для отправки (нет локальных объединений), поэтомуЯ не могу понять, почему так медленно.Я прочитал PG 9.5 FDW имеет проблемы, которые были решены в более поздних версиях.Неужели мне просто нужно обновить эту базу?

...