Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры по БД.doc
Скачиваний:
27
Добавлен:
24.09.2019
Размер:
291.84 Кб
Скачать

26. Системы баз данных, основанные на правилах. Активные и дедуктивные базы данных.

Системам баз данных, в которых правила играют существенно более важную роль, чем в традиционных реляционных системах.

трех видов информации хранимой в БД.

1)информация, характеризующая структуры пользовательских данных. Сохраняется в системных отношениях-каталогах и содержит имена базовых отношений и имена и типы данных их атрибутов.

2)наборы кортежей пользовательских данных, сохраняемых в определенных пользователями отношениях.

3)правила, определяющие ограничения целостности базы данных, триггеры (спец вид хранимой процедуры кот вызывается при выполнении какой-то операции и инициирует другую операцию) базы данных и представляемые (виртуальные) отношения.

Информация 1 и 2 вида в совокупности явно описывает объекты реального мира. Это явные факты, предоставленные пользователями для хранения в БД. (экстенсиональной)

Информация 3 вида служит для руководства СУБД при выполнении различного рода операций. Эту часть базы данных принято называть интенсиональной; она содержит не непосредственные факты, а информацию, характеризующую семантику предметной области. В системах баз данных, основанных на правилах, эти две части как минимум равноправны.

БД называется активной, если СУБД по отношению к ней выполняет не только те действия, которые явно указывает пользователь, но и дополнительные действия в соответствии с правилами, заложенными в саму БД. (System R)

Задачи решаемые разработчиками актив БД:

-Как эффективно определить набор вспомогательных действий, вызываемых прямым действием пользователя? -Каким образом распознавать циклы в цепочке "действие-условие-действие-..." и что делать при возникновении таких циклов? -В рамках какой транзакции выполнять дополнительные условные действия и к бюджету какого пользователя относить возникающие накладные расходы?

Дедуктивная БД состоит из двух частей: экстенциональной, содержащей факты, и интенциональной, содержащей правила для логического вывода новых фактов на основе экстенциональной части и запроса пользователя. (реляционную СУБД можно отнести к дедуктивным системам)

Основным отличием дедуктивной СУБД от реляционной является то, ДСУБД содержать рекурсию. + рекурсия: возможность простого решения в дедуктивных базах данных проблем, которые вызывают большие проблемы в реляционных системах. – рекурсии: она делает реализацию дедуктивной СУБД очень сложной и во многих случаях неразрешимой эффективно проблемой.

Языки запросов и определения интенциональной части БД являются логическими (дедуктивные -логическими). Имеется прямая связь дедуктивных БД с базами знаний.

Для реализации дедуктивной СУБД обычно применяется реляционная система, которая выступает в роли хранителя фактов и исполнителя запросов, поступающих с уровня дедуктивной СУБД.

Дедуктивная СУБД при выполнении одного запроса пользователя в общем случае генерирует пакет запросов к реляционной СУБД, которые могут оптимизироваться совместно. Когда набор правил дедуктивной БД становится велик, и их невозможно разместить в оперативной памяти, возникает проблема управления их хранением и доступом к ним во внешней памяти. Для этого требуются более сложные структуры данных и другие условия выборки. Известны частные попытки решить эту проблему, но общего решения пока нет.