В СУБД Oracle было добавлено несколько средств, которые, не являясь структурами данных, предоставляют новые способы использования хранящихся в базе данных. Это менеджер правил Rules Manager и фильтр выражений Expression Filter.
СУБД Oracle постоянно наращивала предоставляемую функциональность: от простого хранения данных с проверкой некоторых логических атрибутов до хранимых процедур. Компонент Rules Manager, появившийся в версии Oracle Database 10g Release 2, - это еще один шаг в том же направлении.
Идея, стоящая за менеджером правил Rules Manager, проста. Правило хранится в базе данных, а приложения вызывают и вычисляют его. Если бизнес-требования изменяются, то описывающие соответствующий сценарий правила можно модифицировать, не затрагивая код приложения. Правила могут быть общими для различных приложений, что позволяет ввести определенные стандарты и одновременно сократить затраты на обслуживание. Можно создавать детальные правила, применяемые в различных сочетаниях для реализации разнооб- разных условий.
Правила вызываются в ответ на события. Событие приводит к вычислению правила и выполнению заданного в правиле действия немедленно или спустя некоторое время.
Менеджер правил следует структуре событие-действие, помогая пользователям определить пять необходимых элементов:
определить структуру события, которое представляет собой объект, хранящийся в базе данных Oracle; у разных событий отличаются значения атрибутов объекта;
создать правила, включающие условия и последующие действия;
создать классы правил для хранения и группировки правил со сходными структурами;
создать PL/SQL-процедуры, реализующие правила;
определить представление результатов с целью сконфигурировать правила для внешнего использования, когда невозможно вызвать написанные на PL/SQL действия, например, в
случае, когда приложение работает на нескольких уровнях и включает действия, вызы- ваемые на уровне сервера приложений.
Можно определить процедуры разрешения конфликтов для обработки ситуаций, когда событию соответствует сразу несколько правил. Rules Manager также может объединять различные события в составные события и хранить информацию о состоянии до тех пор, пока не будут получены все события.
Правила могут дать весьма мощный инструмент для реализации сложной логики, но влияют на проектирование приложения. Подробная информация о менеджере правил приведена в документации Oracle.
Достарыңызбен бөлісу: |