| От | Andrei Lepikhov |
|---|---|
| Тема | Re: POC: GROUP BY optimization |
| Дата | |
| Msg-id | add93f4d-07d8-4b95-b9be-0d84652a5943@postgrespro.ru обсуждение |
| Ответ на | Re: POC: GROUP BY optimization (Alexander Korotkov <aekorotkov@gmail.com>) |
| Ответы |
Re: POC: GROUP BY optimization
|
| Список | pgsql-hackers |
Here is a new version of GROUP-BY optimization without sort model. On 21/12/2023 17:53, Alexander Korotkov wrote: > I'd like to make some notes. > > 1) As already mentioned, there is clearly a repetitive pattern for the > code following after get_useful_group_keys_orderings() calls. I think > it would be good to extract it into a separate function. Please, do > this as a separate patch coming before the group-by patch. That would > simplify the review. Done. See patch 0001-*. Unfortunately, extraction of whole cycle isn't practical, because it blows out the interface of the routine. > 2) I wonder what planning overhead this patch could introduce? Could > you try to measure the worst case? What if we have a table with a lot > of indexes and a long list of group-by clauses partially patching > every index. This should give us an understanding on whether we need > a separate GUC to control this feature. In current implementation I don't anticipate any significant overhead. GUC is needed here to allow users adhere their own ordering and to disable feature in the case of problems. > 4) I think we can do some optimizations when enable_incremental_sort > == off. Then in get_useful_group_keys_orderings() we should only deal > with input_path fully matching the group-by clause, and try only full > match of group-by output to the required order. Hm, is it really make sense in current implementation? -- regards, Andrei Lepikhov Postgres Professional
В списке pgsql-hackers по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера