в условие может входить время
пользователя. Например, в условие может входить время суток, а
действие может быть внешним, например, вывод информации на экран
оператора. Практически все современные работы по активным БД
связаны с проблемой эффективной реализации такой продукционной
системы.
Вместе с тем, по нашему мнению, гораздо важнее в практических
целях реализовать в реляционных СУБД аппарат триггеров. Заметим,
что в проекте стандарта SQL3 предусматривается существование
языковых средств определения условных воздействий. Реализация и
будет первым практическим шагом к активным БД (как мы отмечали в
разд.1, уже появились соответствующие коммерческие реализации).
2.3 Дедуктивные базы данных
По определению, дедуктивная БД состоит из двух частей:
экстенциональной, содержащей факты, и интенциональной, содержащей
правила для логического вывода новых фактов на основе
экстенциональной части и запроса пользователя.
Легко видеть, что при таком общем определении SQL-ориентированную
реляционную СУБД можно отнести к дедуктивным системам.
Действительно, что есть определенные в схеме реляционной БД
представления как не интенциональная часть БД.
Основным отличием реальной дедуктивной СУБД от реляционной
является то, что и правила интенциональной части БД, и запросы
пользователей могут содержать рекурсию. Именно возможность
рекурсии делает реализацию дедуктивной СУБД очень сложной и во
многих случаях эффективно неразрешимой проблемой.
Мы не будем здесь более подробно рассматривать конкретные
проблемы, применяемые ограничения и используемые методы в
дедуктивных системах. Отметим лишь, что обычно языки запросов и
определения интенциональной части БД являются логическими
(поэтому дедуктивные БД часто называют логическими). Имеется
прямая связь дедуктивных БД с базами знаний (интенциональную
часть БД можно рассматривать как БЗ). Более того, трудно провести
грань между этими двумя сущностями; по крайней мере, общего
мнения по этому поводу не существует.
Какова же связь дедуктивных БД с реляционными СУБД, кроме того,
Содержание Назад Вперед