Вопросы к Поиску с Алисой
PostgreSQL обрабатывает одновременные запросы данных в режиме параллелизма. www.postgresql.org severalnines.com
Когда оптимизатор определяет, что параллельный запрос — самая быстрая стратегия выполнения для конкретного запроса, он создаёт план запроса, который включает узел Gather или Gather Merge. www.postgresql.org Если этот узел находится в самом верху дерева плана, то в параллельном режиме будет выполняться весь запрос. postgrespro.ru Если он находится в другом месте плана, параллельно будет выполняться только часть плана ниже него. postgrespro.ru
Выполнение запроса всегда начинается в «ведущем» процессе. www.percona.com Он выполняет всю непараллельную деятельность и свой вклад в параллельную обработку. www.percona.com Другие процессы, выполняющие те же запросы, называются «рабочими» процессами. www.percona.com
Рабочие процессы общаются с ведущим через очередь сообщений (на основе общей памяти). www.percona.com У каждого процесса две очереди: одна для ошибок, вторая для кортежей. www.percona.com
Общее число фоновых рабочих процессов, которые могут существовать одновременно, ограничивается параметрами maxworkerprocesses и maxparallelworkers. postgrespro.ru Таким образом, параллельный запрос может выполняться меньшим числом рабочих процессов, чем планировалось, либо вообще без дополнительных рабочих процессов. postgrespro.ru