Redshift одновременных запросов на пользователя - PullRequest
0 голосов
/ 24 января 2019

У меня есть очередь Redshift WLM, настроенная на параллелизм 8 для одной группы.В этой группе у меня есть один пользователь («looker», мой основной инструмент BI), который выполняет множество запросов одновременно.

Насколько я понимаю, все члены этой группы могут выполнить до 8 запросов.Но может ли один пользователь выполнить до 8 запросов одновременно?Или тот факт, что один пользователь будет узким местом в количестве запросов, которые он может выполнять одновременно?

1 Ответ

0 голосов
/ 24 января 2019

установленный вами параллелизм (8 в вашем случае) применяется ко всем пользователям / заданиям, определенным для этой группы.так что если у пользователя a запущено 4 задания, у пользователя b запущено 4 задания, то запрос пользователя cfreom будет поставлен в очередь.

см. https://docs.aws.amazon.com/redshift/latest/dg/cm-c-defining-query-queues.html

Не всегда лучше иметь многоиз заданий, выполняемых одновременно с красным смещением, поскольку это может снизить общую пропускную способность.Одна задача часто может с радостью занять 100% ресурсов сама по себе из-за особенностей системы MPP.

Немного предыстории в MPP.

MPP означает «Массовая параллельная обработка».«Эта технология является основным отличием для аналитических баз данных, таких как Redshift.Идея, стоящая за этим, проще говоря, состоит в том, что запрос может быть разбит на несколько параллельных процессов, эти процессы независимы и ничего не разделяют между ними.Более подробное описание см. Здесь

https://vldbsolutions.com/technology/amazon-redshift.php

Часто один большой запрос к базе данных MPP может занимать 100% ресурсов.Это ХОРОШО, однако, если одновременно отправляется больше запросов, менеджер ресурсов будет совместно использовать ресурсы.например,

1 большой запрос - 100% ресурсов - выполняется за 10 секунд

или

4 больших запроса - 25% ресурсов каждый = все 4 запускаются вместе40 секунд

...