From: | "Ilia Kantor" <ilia(at)obnovlenie(dot)ru> |
---|---|
To: | <pgsql-ru-general(at)postgresql(dot)org> |
Subject: | RE: [pgsql-ru-general] Зацените типчик |
Date: | 2006-07-07 13:47:11 |
Message-ID: | auto-000454219256@backend2.aha.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-ru-general |
Когда-то я делал похожую вещь.
А именно - поле (или поля) проверки доступа.
Поле состояло из массива int[], содержащего ID нужных групп доступа.
Проверка на доступ осуществлялась операцией @.
Брались все группы юзера и проверялось, пересекаются ли они с полем.
Если да, то право имеет. Сам оператор пересечения @ работал через
GIST-индекс.
Все пахало достаточно быстро и красиво, благо групп не так много разных.
Для того, чтобы оптимизер мог сделать правильный план, пришлось писать
собственную статистику по таким полям (т.е по int[]).
Однако, как внедрить ее в VACUUM/ANALYZE - неясно, а разработчикам на сие
накакать, видимо (никто не помог).
Так и перешел на Оракл ;)
> -----Original Message-----
> From: pgsql-ru-general-owner(at)postgresql(dot)org [mailto:pgsql-ru-general-
> owner(at)postgresql(dot)org] On Behalf Of Andrey N. Oktyabrski
> Sent: Friday, July 07, 2006 2:23 PM
> To: pgsql-ru-general(at)postgresql(dot)org
> Subject: [pgsql-ru-general] Зацените типчик
>
> Здравствуйте.
>
> Накорябал тип данных (см. вложение). Хочу узнать мнение общественности.
> Если кому пригодится - совсем хорошо :-)
>
> Компиляция/установка - gmake && gmake install.
From | Date | Subject | |
---|---|---|---|
Next Message | Ilia Kantor | 2006-07-07 13:58:17 | RE: [pgsql-ru-general] Зацените типчик |
Previous Message | Andrey N. Oktyabrski | 2006-07-07 10:22:52 | Зацените типчик |