реконструкции которых из плоских таблиц
реконструкции которых из плоских таблиц реляционной БД приходится
выполнять запросы, почти всегда требующие соединения отношений. В
соответствии с требованиями разработчиков нетрадиционных
приложений появилось направление исследований баз сложных
объектов. Это очень обширная область исследований, в которой
затрагиваются вопросы моделей данных, структур данных, языков
запросов, управления транзакциями, журнализации и т.д. Во многом
эта область соприкасается с областью объектно-ориентированных БД.
2.2 Активные базы данных
По определению БД называется активной, если СУБД по отношению к
ней выполняет не только те действия, которые явно указывает
пользователь, но и дополнительные действия в соответствии с
правилами, заложенными в саму БД.
Легко видеть, что основа этой идеи содержалась в языке SQL
времени System R. На самом деле, что есть определение триггера
или условного воздействия как не введение в БД правила, в
соответствии с которым СУБД должна производить дополнительные
действия? Плохо лишь то, что на самом деле триггеры не были
полностью реализованы ни в одной из известных систем, даже и в
System R. И это не случайно, потому что реализация такого
аппарата в СУБД очень сложна, накладна и не полностью понятна.
Среди вопросов, ответы на которые до сих пор не получены,
следующие. Как эффективно определить набор вспомогательных
действий, вызываемых прямым действием пользователя? Каким образом
распознавать циклы в цепочке "действие-условие-действие-..." и
что делать при возникновении таких циклов? В рамках какой
транзакции выполнять дополнительные условные действия и к бюджету
какого пользователя относить возникающие накладные расходы?
Масса проблем не решена даже для сравнительно простого случая
реализации триггеров SQL, а задача ставится уже гораздо шире.
По существу, предлагается иметь в составе СУБД продукционную
систему общего вида, условия и действия которой не ограничиваются
содержимым БД или прямыми действиями над ней со стороны
Содержание Назад Вперед