Re: GIST optimization to limit calls to operator on sub nodes
От | Pujol Mathieu |
---|---|
Тема | Re: GIST optimization to limit calls to operator on sub nodes |
Дата | |
Msg-id | 53B11110.7070308@realfusio.com обсуждение исходный текст |
Ответ на | Re: GIST optimization to limit calls to operator on sub nodes (Emre Hasegeli <emre@hasegeli.com>) |
Список | pgsql-performance |
Le 29/06/2014 22:14, Emre Hasegeli a écrit : > Pujol Mathieu <mathieu.pujol@realfusio.com>: >> Hello, >> I already post my question in the General Mailing list, but without >> succeed so I try this one that seems to me more specialized. >> My question is about GIST index. >> I made my own index to handle specific data and operators. It works >> pretty fine but I wonder if it was possible to optimize it. >> When I run my operator on a GIST node (in the method >> gist_range_consistent) it returns "NotConsistent" / >> "MaybeConsistent" / "FullyConsistent". >> NotConsistent -> means that all subnodes could be ignored, >> gist_range_consistent return false >> MaybeConsistent -> means that at least one subnode/leaf will be >> consistent, gist_range_consistent return true >> FullyConsistent -> means that all subnodes/leaves will be >> consistent, gist_range_consistent return true >> >> So like with the "recheck flag" I would like to know if there is a >> way to notify postgres that it is not necessary to rerun my operator >> on subnodes, to speedup the search. > I do not think it is possible at the moment. The GiST framework can > be extended to support this use case. I am not sure about the > speedup. Most of the consistent functions do not seem very expensive > compared to other operations of the GiST framework. I would be > happy to test it, if you would implement. > > Thanks for your reply. I am not sure to have time to develop inside the framework, but if I try I'll let you know my results. In my case the consistent function is costly and the number of row important so this optimization could save several hundred tests on a single request. -- Mathieu PUJOL Ingénieur Réalité Virtuelle REAL FUSIO - 3D Computer Graphics 10, rue des arts - 31000 TOULOUSE - FRANCE mathieu.pujol@realfusio.com - http://www.realfusio.com
В списке pgsql-performance по дате отправления: