Базы и банки данных: структура, основные элементы
БД – это совокупность сведений о конкретных объектах реального мира в какой-либо предметной области. Синоним термина «база данных» – «банк данных».
БД может быть основана на одной модели или на совокупности нескольких моделей. Любую модель данных можно рассматривать как объект, который характеризуется своими свойствами (параметрами), и над ней, как над объектом, можно производить какие-либо действия.
Основные требования к базам данных и систем управление базами данных:
- Возможность представления адекватных реальной предметной области структур данных (построение адекватной информационной модели предметной области).
- Простота и малые затраты ресурсов на развитие системы (быстрая и дешевая модификация старых и разработка новых программных приложений в рамках автоматизированной информационной системы).
- Простота и оперативность доступа к данным, возможность поиска информации разными методами.
- Возможность одновременного эффективного обслуживания большого количества пользователей.
- Возможность использования в распределенных вычислительных сетях компьютеров.
- Обеспечение режима разграниченного доступа к данным и программам, исключение возможности их несанкционированного применения.
- Обеспечение представления данных пользователям в удобном виде для их дальнейшего применения.
- Обеспечение необходимой скорости решения задач при ограниченных затратах ресурсов компьютеров.
- Обеспечение защиты информации в БД от сбоев и отказов в работе технических средств и ошибок пользователей.
Эффективность функционирования информационной системы во многом зависит от ее архитектуры. В настоящее время перспективной является архитектура клиент-сервер. В достаточно распространенном варианте она предполагает наличие компьютерной сети и распределенной базы данных, включающей БД корпоративную (БДК) и БД персональные (БДП). БДК размещается на компьютере-сервере, БДП размещаются на компьютерах сотрудников подразделений, являющихся клиентами корпоративной БД.
Сервером определенного ресурса в компьютерной сети называется компьютер (программа), управляющий этим ресурсом, клиентом — компьютер (программа), использующий этот ресурс.
В качестве ресурса компьютерной сети могут выступать, к примеру, базы данных, файловые системы, службы печати, почтовые службы. Тип сервера определяется видом ресурса, которым он управляет. Например, если управляемым ресурсом является база данных, то соответствующий сервер называется сервером базы данных.
Достоинством организации информационной системы по архитектуре клиент-сервер является удачное сочетание централизованного хранения, обслуживания и коллективного доступа к общей корпоративной информации с индивидуальной работой над персональной информацией. Структура распределенной БД, построенной по архитектуре клиент-сервер, показана на рис.
Корпоративная БД создается, поддерживается и функционирует под управлением сервера БД.
Для создания и управления функционированием персональных БД и приложений, работающих с ними, используются СУБД такие, например, как Microsoft Ассеss под ОС Windows, OpenOffice.org. Base под ОС Linux.
В зависимости от размеров организации и особенностей решаемых задач информационная система может иметь одну из следующих конфигураций:
• компьютер-сервер, содержащий корпоративную и персональные базы;
• компьютер-сервер и персональные компьютеры с БДП;
• несколько компьютеров-серверов и персональных компьютеров с БДП.
Использование архитектуры клиент-сервер дает возможность постепенного наращивания информационной системы предприятия, во-первых, по мере развития предприятия; во-вторых, по мере развития самой информационной системы.
Разделение общей БД на корпоративную БД и персональные БД позволяет уменьшить сложность проектирования БД по сравнению с централизованным вариантом, а значит, снизить вероятность ошибок при проектировании и стоимость проектирования.
Важнейшим достоинством применения БД в информационных системах является обеспечение независимости данных от прикладных программ. Это позволяет не обременять пользователей проблемами представления данных на физическом уровне: размещения данных в памяти, методов доступа к ним и т. д.
Такая независимость достигается поддерживаемым СУБД многоуровневым представлением данных в БД на логическом (пользовательском) и физическом уровнях. Иными словами, благодаря СУБД и наличию логического уровня представления данных обеспечивается отделение концептуальной (понятийной) модели БД от ее физического представления в памяти ЭВМ.
Основные шаги проектирования БД:
- Определить информационные потребности БД;
- Проанализировать объекты, которые нужно промоделировать в БД.
Объектно-ориентированные БД объединяют в себе две модели данных, реляционную и сетевую, и используются для создания крупных БД со сложными структурами данных.
Реляционная БД есть совокупностью отношений, которые содержат всю необходимую информацию и объединенную разными связями.
БД считается нормализованной, если выполняются следующие условия:
- каждая таблица имеет главный ключ;
- все поля каждой таблицы зависят только от главного ключа;
- в таблицах отсутствуют группы повторных значений.
Для успешной работы с многотабличными БД, как правило, надо установить между ними связи. При этом пользуются терминами “базовая таблица» (главная) и “подчиненная таблица». Связь между таблицами получается благодаря двух полей, одно из которых находится в базовой таблице, а второе - в подчиненной. Эти поля могут иметь значение, которое повторяются. Если значение в связанном поле записи базовой таблицы и в поле подчиненной совпадают, то эти записи называются связанными.
Существуют четыре типа отношений между таблицами: один к одному, один ко многим, много к одному, много ко многим.
Отношение один к одному означает, что каждая запись в одной таблице соответствует только одной записи в другой таблице.
Отношение один ко многим означает, что одна запись из первой таблицы может быть связана более чем с одной записью из другой таблицы.
Главная таблица – это таблица, которая содержит первичный ключ и составляет часть один в отношении один ко многим.
Внешний ключ – это поле, содержащее такой же тип информации в таблице со стороны много.