Скачать учебники

Тикунов В. С. Геоинформатика. Базовые понятия реляционных баз данных. Реляционная модель данных.

Скачать полную версию учебника (с рисунками, формулами, картами, схемами и таблицами) одним файлом в формате MS Office Word Скачать книгу

Базовые понятия реляционных баз данных. В преобладающем большинстве ГИС используются реляционные базы данных, поддерживаемые такими СУБД, как dBase, INFO, ORACLE, INFORMIX и т. п. Такие БД позволяют разработчикам ГИС разделить проблему управления пространственными данными на две части: как представлять геометрию объектов и топологию пространственных объектов (вектор или растр) и как работать с атрибутами этих объектов. Для этого пригодны реляционные СУБД, управляемые ими модели данных иногда называют геореляционными моделями. Основные их преимущества таковы:
• нет необходимости хранить атрибуты с пространственными данными, но они всегда могут содержаться где-нибудь в системе или поставляться, например, по сети;
• атрибуты могут быть изменены или удалены без изменения пространственной БД;
• коммерческие реляционные СУБД стандартны и могут управляться стандартными запросами;
• хранение атрибутивных данных в реляционных БД не противоречит основным принципам слоев в ГИС;
• атрибуты могут быть привязаны к пространственным единицам и представлены разными способами.

Основными понятиями реляционных баз данных являются: тип данных, домен, атрибут, кортеж, первичный ключ и отношение.
Понятие тип данных полностью адекватно понятию типа данных в языках программирования. Обычно в реляционных БД допускается хранение символьных, числовых данных, битовых строк, специализированных числовых данных (таких, как «деньги»), а также специальных данных — дата, время, временной интервал. Развивается подход к расширению возможностей реляционных систем абстрактными типами данных.
Понятие домен имеет некоторые аналогии с подтипами в некоторых языках программирования. В самом общем виде домен определяется заданием некоторого базового типа данных, к которому относятся элементы домена, и произвольного логического выражения, применяемого к элементу типа данных. Если вычисление этого логического выражения дает результат «истина», то элемент данных является элементом домена. Наиболее правильное интуитивное понимание домена — допустимое множество значений определенного типа. Данные считаются сравнимыми только в том случае, когда они относятся к одному домену.
Отношение — это именованное множество пар (имя атрибута, имя домена (или типа)). Если все атрибуты одного отношения определены на разных доменах, целесообразно использовать для наименования атрибутов имена соответствующих доменов.
Кортеж, соответствующий данной схеме отношения, — это набор именованных значений заданного типа.
Обычным представлением отношения является таблица, в заголовке которой указывают наименование отношения, а в строках — кортежи; в этом случае имена атрибутов именуют столбцы таблицы. Поэтому когда говорят «столбец таблицы», имеют в виду «атрибут отношения». Такой терминологии придерживаются в большинстве коммерческих реляционных СУБД.

Реляционная модель данных. Модель данных с точки зрения СУБД описывает некоторый набор родовых понятий и признаков, которыми должны обладать сама СУБД и управляемые ею базы данных, если они основываются на этой модели. Наличие модели данных позволяет сравнивать конкретные реализации, используя один общий язык.
Реляционная модель состоит из трех частей, описывающих разные аспекты реляционного подхода: структурной, манипуляционной и целостной.
В структурной части модели фиксируется, что единственной структурой данных, используемой в реляционных БД, является нормализованное отношение — некоторый определенный набор ограничений, свойственный этому отношению. Нормализация связана с поиском наиболее простой структуры для данного множества данных и имеет дело с зависимостью между атрибутами; она позволяет избежать потери общей информации при удалении или вводе записей. Существует несколько формальных типов нормализации (более пяти).
Манипуляционная часть модели определяет механизм манипулирования реляционными БД — реляционная алгебра и реляционное исчисление, базирующиеся на теории множеств и логическом аппарате исчисления отношений.
В целостной части реляционной модели данных фиксируются два базовых требования целостности: целостности сущностей и целостности по ссылкам. Объекту, или сущности, реального мира в реляционных БД соответствуют записи (кортежи) отношений, и требование целостности состоит в сохранении отличий разных записей этого отношения; говорят, что любое отношение должно обладать первичным ключом.
Второе требование более сложно. Сущности реального мира представляются в реляционной БД в виде записей нескольких отношений. Для связи отношений используется атрибут, который служит внешним ключом. Отношение, в котором определен внешний ключ, ссылается на соответствующее отношение, в котором такой же атрибут является первичным ключом. Требование целостности по ссылкам состоит в том, что для каждого значения внешнего ключа должна найтись запись с таким же значением первичного ключа в отношении, на которое указывает ссылка, либо значение внешнего ключа должно быть неопределенным (т. е. ни на что не указывать).
Выполнение таких требований чрезвычайно важно при модификации отношений или удалении записей. Поддержке целостности при удалении кортежа служат: запрет на удаление кортежа, на который существуют ссылки; автоматическая замена значения внешнего ключа на неопределенное во всех ссылающихся кортежах; автоматическое удаление всех ссылающихся кортежей.

Реляционные СУБД обладают рядом особенностей, влияющих на организацию внешней памяти. К наиболее важным особенностям можно отнести следующие:
• наличие двух уровней системы: уровня непосредственного управления данными во внешней памяти и языкового уровня (например, уровня, реализующего язык SQL); тогда подсистема нижнего уровня должна поддерживать во внешней памяти набор базовых структур, конкретная интерпретация которых входит в число функций подсистемы верхнего уровня;
• информация, связанная с наименованием объектов базы данных и их конкретными свойствами (например, структура ключа-индекса), поддерживается подсистемой языкового уровня;
• регулярность структур данных во внешней памяти, поскольку основным объектом реляционной модели данных является плоская таблица;
• для выполнения операторов языкового уровня над одним или несколькими отношениями во внешней памяти поддерживаются дополнительные «управляющие» структуры — индексы;
• для выполнения требования надежного хранения баз данных поддерживается избыточность хранения данных во внешней памяти.

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

< Обеспечение надежности хранения данных в БД. Поддержка языков управления БД. Типовая организация СУБД.

Содержание книги "Тикунов В. С. Геоинформатика."

Язык реляционных баз данных SQL. СУБД в архитектуре «клиент-сервер». >

Скачать полную версию учебника (с рисунками, формулами, картами, схемами и таблицами) одним файлом в формате MS Office Word Скачать книгу

При копировании информации обязательны прямые ссылки на сайт, а также на авторов книг.
Все книги являются собственностью их авторов и служат исключительно для ознакомления.
© Edu-Knigi.ru, 2011. © Дизайн и программирование от студии "ПСГ".