ddl в триггере

Nutss
Дата: 23.03.2011 09:12:32
Привет! Прошу совет.
Возникла идея использовать mat view для увеличения производительности. Частично критерии запроса для матвью вынесены для управления в интерфейс пользователя и хранится в табличках. Будет ли хорошим решением повесить пересоздание матвью в триггер на update поля с описанием запроса в метатабличке? Или это дурной дизайн?
pravednik
Дата: 23.03.2011 09:43:03
Nutss,

дурной дизайн.
Чем не устраивает просто рефрешить матвъю?
Nutss
Дата: 23.03.2011 09:46:23
Речь о пересоздании мат вью как конструкции. Меняются условия самого запроса.
Например, было CREATE MATERIALIZED VIEW vvv REFRESH FORCE AS select * from tab where id = 1, а стало CREATE MATERIALIZED VIEW vvv REFRESH FORCE AS select * from tab where id = 4. В какой момент пересоздать?
serpv
Дата: 23.03.2011 09:57:52
Nutss
пересоздание матвью в триггер на update поля
я тоже был впечатлен идеей, не поняв с первого раза смысл всего поста.
Сергей Арсеньев
Дата: 23.03.2011 10:11:59
Nutss
В какой момент пересоздать?

Делаем матвью которое рефрешится на комит, у него триггер, который запускает джоб, а уш из него хреначим (извините мой клачский) матвью.
Домашнее задание - настроить метрику в EM, которая будет ослеживать инвалидацию объекта и запускать процесс восстанвления начального состояния матвью если все полетело к черту.
-2-
Дата: 23.03.2011 10:24:05
Nutss,

А зачем именно матвью, неуж-то query rewrite задействован?
Nutss
Дата: 23.03.2011 10:38:13
Сергей Арсеньев
Делаем матвью которое рефрешится на комит, у него триггер, который запускает джоб, а уш из него хреначим (извините мой клачский) матвью.

Не понятно! Матвью, у него тригер, который запускает джоб, из которого пересоздается само матвью? Или Вы предлагаете создать ещё одно матвью?
Nutss
Дата: 23.03.2011 10:42:04
-2-
Nutss,

А зачем именно матвью, неуж-то query rewrite задействован?


Почему матвью? Очень медленно работает запрос с подзапросом (100 секунд). Решила создать матвью для результатов подзапроса и рефрешить его , допустим, раз в 5 минут. Для пользователя 5 минутная актуальность не критична, а вот скорость выборки - очень критична.
wurdu
Дата: 23.03.2011 10:44:53
Nutss
-2-
Nutss,

А зачем именно матвью, неуж-то query rewrite задействован?


Почему матвью? Очень медленно работает запрос с подзапросом (100 секунд). Решила создать матвью для результатов подзапроса и рефрешить его , допустим, раз в 5 минут. Для пользователя 5 минутная актуальность не критична, а вот скорость выборки - очень критична.
Уже разобрались, почему запрос с подзапросом медленно работает?
-2-
Дата: 23.03.2011 10:45:57
Nutss
Решила создать матвью для результатов подзапроса и рефрешить его , допустим, раз в 5 минут.
Так раз в 5 минут или в триггере на таблицу условий? Вопрос был почему ИМЕННО матвью, чем обычный delete+insert не устраивает, пусть даже в матвью.