Обсуждение: Re: Зацените т

Поиск
Список
Период
Сортировка

Re: Зацените т

От
"Andrey N. Oktyabrski"
Дата:
Ilia Kantor wrote:
>>> ГИСТ-индексы в простейшем случае создаются без функции, которая
>>> подсчитывает селективность, с заглушкой - типа всегда 1% от таблицы.
>> Что это за функция? Где можно взять пример? Как её подключить - есть
>> штатные средства, или постгрес хачить? Если второе, скорее всего не
>> возьмусь, ибо дело неблагодарное.
>
> Функции гистовые, см. например, гист для int[] и селективность какую-нить
> готовую (selectivity).
Нет, я хотел узнать, грубо выражаясь, имя этой функции. Потому что
реализовал вроде всё что надо для индекса (согласно этой статье:
http://www.sai.msu.su/~megera/postgres/talks/gist_tutorial.html) - ан
нет, "если всё идёт хорошо, значит вы чего-то не заметили" (с). Мне
нужна какая-то отправная точка - где эти вещи хорошо описаны и ключевые
слова для поиска примеров в исходниках. Чтобы слишком много простых и
глупых вопросов не задавать.

>>>>> Однако, как внедрить ее в VACUUM/ANALYZE - неясно, а разработчикам на
>>>>> сие накакать, видимо (никто не помог).
>> Может, просто не было предусмотрено такое в постгресе?
>
> Я написал селективность, придумал и реализовал необходимую статистику как
> CUSTOM, и сделал PHP-скрипт для ее сбора ;) Мог бы и С-функцию, здесь все
> прозрачно.
Да там вроде Си никакого выигрыша и не даст, насколько я увидел.

> В общем-то, все работало нормально, если после каждого сбора статов ANALYZE
> вызывать свой собственный сборщик.
>
> Добавить в postgres мне это не удалось, т.к int[] является встроенным типом
> и я не могу подвесить мой сборщик, нужно модифицировать встроенный.
Стало быть, с полностью своим типом это должно быть гораздо проще?

> Присылаю тебе то, что успел натворить, в аттаче (см intarray патченный и
> stats.php).
Спасибо, попробую поизучать. Правда, могу и отложить на неопределённое
время, потому как с первого июля я трижды папулька и свободного времени
как-то сразу поуменьшилось :-)

RE: [pgsql-ru-general] Зацените типчик

От
"Ilia Kantor"
Дата:
> Нет, я хотел узнать, грубо выражаясь, имя этой функции. Потому что
> реализовал вроде всё что надо для индекса (согласно этой статье:
> http://www.sai.msu.su/~megera/postgres/talks/gist_tutorial.html) - ан
> нет, "если всё идёт хорошо, значит вы чего-то не заметили" (с). Мне
> нужна какая-то отправная точка - где эти вещи хорошо описаны и ключевые
> слова для поиска примеров в исходниках. Чтобы слишком много простых и
> глупых вопросов не задавать.

Да есть contsel, есть моя функция, есть еще PostGIS...

 
> > В общем-то, все работало нормально, если после каждого сбора статов
> ANALYZE
> > вызывать свой собственный сборщик.
> >
> > Добавить в postgres мне это не удалось, т.к int[] является встроенным
> типом
> > и я не могу подвесить мой сборщик, нужно модифицировать встроенный.
> Стало быть, с полностью своим типом это должно быть гораздо проще?
Да. Вполне себе doable :)

См. пример в PostGIS-расширении.


> > Присылаю тебе то, что успел натворить, в аттаче (см intarray патченный и
> > stats.php).
> Спасибо, попробую поизучать. Правда, могу и отложить на неопределённое
> время, потому как с первого июля я трижды папулька и свободного времени
> как-то сразу поуменьшилось :-)

Поздравления в кубе ;)