Банк данных, его состав и особенности

Банк данных (БнД) — это автоматизированная система специ­альным образом организованных данных — баз данных, программ­ных, технических, языковых, организационно-методических средств и персонала, предназначенных для обеспечения централизованного накопления и коллективного многоцелевого использования данных.

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

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

Рис. 3.14. Состав банка данных

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

Организация данных в базе данных требует предварительного мо­делирования, т.е. построения логической модели данных.

Модель данных — это некоторая абстракция, которая, будучи приложима к конкретным данным, позволяет разработчикам и поль­зователям трактовать их уже как информацию — сведения, содержа­щие не только данные, но взаимосвязь между ними. Главное назна­чение модели данных — систематизация разнообразной информации и отражение ее свойств по содержанию, структуре, объему, связям, динамике с учетом удовлетворения информационных потребностей всех категорий пользователей.

К классическим моделям представления данных относят иерар­хическую, сетевую и реляционную.

Иерархическая модель данных представляет информационные отображения объектов реального мира — сущности и их связи в виде ориентированного графа, или дерева (рис. 3.15).

В иерархической модели отношения между Данными бывают типа «родитель — потомки», т.е. у каждого объекта только один ро­дитель (у корневого объекта нет родите­ля), но в принципе может быть несколь­ко потомков.

Такие отношения принято изобра­жать в виде дерева, где ребро между объ­ектами отображает наличие некоторого отношения, причем название отношения пишется на ребре. Например, между объ­ектами «клиент» и «заказ» может быть отношение, которое называется «делает», а между «заказ» и «товары» — отношение «состоит из».

В случае, когда граф отношений ме­жду объектами может представляться не только древовидными структурами, имеют дело с сетевой моделью данных (рис. 3.16). Сетевая модель организации данных является расширением иерархической модели. В иерархических структурах

запись-потомок должна иметь только од­ного предка — в сетевой структуре данных потомок может иметь любое число пред­ков.

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

В настоящее время наибольшее рас­пространение при разработке БД полу­чила реляционная модель данных. Понятие реляционной модели данных (от англий­ского relation — отношение) связано с разработками Е. Кодца. Эти модели характеризуются простотой структуры данных, удобным для пользователя табличным пред­ставлением и возможностью использования формального аппарата реляционной алгебры и реляционного исчисления для обработки данных.

Реляционная модель ориентирована на организацию данных в виде двумерных таблиц. Реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:

• каждый элемент таблицы — один элемент данных;

Рис. 3.15. Структура иерархической модели
в   с
 
Рис. 3.16. Представление связей в сетевой модели

D   Е
 

• все столбцы в таблице однородные, т.е. все элементы в столб­це имеют одинаковый тип (числовой, символьный или другой) и длину;

• каждый столбец имеет уникальное имя;

• одинаковые строки в таблице отсутствуют;

• порядок следования строк и столбцов может быть произволь­ным.

Реляционная организация БД в виде таблицы СОТРУДНИКИ представлена на рис. 3.17.

Столбцы (поля)

Номер Фамилия Имя Отчество Дата Оклад (руб.)
  Андреев Алексей Иванович 01.05.82 15 900,00
  Кулибин Илья Александрович 15.12.75 14 500,00
  Алексеенко Татьяна Петровна 21.08.68 20 300,00

Строки (записи)

Рис. 3.17. Содержимое файла (таблицы) СОТРУДНИКИ базы данных

Отношения представлены в виде таблиц, строки которых соот­ветствуют записям, а столбцы — полям. Структурные элементы ре­ляционной базы данных описаны в табл. 3.2.

Поле, каждое значение которого однозначно определяет соответ­ствующую запись, называется простым ключом. Если записи одно­значно определяются значениями нескольких полей, то такая табли­ца базы данных имеет составной ключ. Чтобы связать две реляци­онные таблицы, необходимо ключ первой таблицы ввести в состав ключа второй таблицы или ввести в структуру первой таблицы внешний ключ - ключ второй таблицы.

Проектирование реляционной БД состоит из трех самостоятель­ных этапов: концептуального, логического и физического проекти­рования.

Целью концептуального проектирования является разработка БД на основе описания предметной области. Описание должно содер­жать совокупность документов и данных, необходимых для загрузки в БД, а также сведения об объектах и процессах, характеризующих предметную область. Разработка БД начинается с определения со­става данных, подлежащих хранению в БД для обеспечения выпол­нения запросов пользователя. Затем производятся их анализ и струк­турирование.

Таблица 3.2. Структурные элементы реляционной БД
Элемент Описание
Поле Элементарная единица логической организации данных, которая соответствует отдельной, неделимой единице ин­формации — реквизиту Для описания поля используются характеристики: имя (например, Номер, Фамилия, Имя, Отчество, Дата); тип (например, символьный, числовой, дата); длина (например, 20 байт, причем определяется максималь­но возможным количеством символов); точность для числовых данных (например, два десятичных знака для отображения дробной части числа)
Запись Совокупность логически связанных полей Структура записи определяется составом и последовательно­стью входящих в нее полей, каждое из которых содержит элементарное данное Запись соответствует составной единице информации — документу
Файл (таблица) Именованная совокупность одинаковых по структуре эк­земпляров записей Каждый экземпляр записи однозначно идентифицируется уникальным ключом записи В структуре записи файла указываются поля, значения которых являются ключами: первичными (они идентифи­цируют экземпляр записи) и вторичными (они выполняют роль поисковых или группировочных признаков) Файл (таблица) соответствует составной единице инфор­мации — информационному массиву

Пример описания логической структуры записи файла (таблицы) СОТРУДНИКИ представлен на рис. 3.18.

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

Этап физического проектирования дополняет логическую модель характеристиками, которые необходимы для определения способов физического хранения и использования БД, объема памяти и типа устройств для хранения.

При физической организации баз данных имеют дело не с пред­ставлением данных в прикладных программах, а с их размещением на запоминающих устройствах.

Имя файла: СОТРУДНИКИ
Поле Признак ключа Формат поля
Обозначение (имя поля) Наименование (реквизит) Тип Длина Точность
Номер Табельный номер * Символьный    
Фамилия Фамилия сотрудника   Символьный    
Имя Имя сотрудника   Символьный    
Отчество Отчество сотрудника   Символьный    
Дата Дата рождения   Дата    
Оклад (руб.) Должностной оклад (руб.)   Числовой    

Рис. 3.18. Описание логической структуры записи файла (таблицы) СОТРУДНИКИ

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

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

В последние годы появились и активно внедряются постреляци­онная, многомерная и объектно-ориентированная модели данных, разрабатываются системы, основанные на других моделях данных, расширяющих существующие: объектно-реляционные, семантические и др. Некоторые их них служат для интеграции баз данных, баз зна­ний и языков программирования.

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

Язык структурированных запросов SQL (Structured Query Language) является стандартным языком запросов по работе с реляционными БД. Он предназначен для выполнения операций над таблицами (создание, удаление, изменение структуры) и над данными таблиц (выборка, изменение, добавление и удаление). SQL не содержит операторов управления, организации подпрограмм, ввода-вывода и поэтому автономно не используется. Обычно он погружен в среду встроенного языка программирования СУБД (например, VBA — Visual Basic for Applications СУБД MS Access и др.).

Стандарт языка SQL поддерживает современные реализации ря­да языков программирования. В специализированных системах раз­работки приложений типа клиент-сервер среда программирования, кроме того, обычно дополнена коммуникационными средствами, средствами разработки пользовательских интерфейсов, средствами проектирования и отладки.

Основным назначением языка SQL является подготовка и вы­полнение запросов пользователей.

К наиболее важным признакам классификации современных СУБД могут быть отнесены:

• среда функционирования — класс компьютеров и ОС для ра­боты СУБД;

• тип поддерживаемой в СУБД модели данных;

• возможности встроенного языка СУБД, его переносимость в другие приложения (SQL, Visual Basic и др.);

• наличие развитых диалоговых средств конструирования таблиц, форм, запросов, отчетов, макросов и средств работы с БД;

• возможность работы с нетрадиционными данными в корпо­ративных сетях (страницы HTML, сообщения электронной почты, звуковые файлы, изображения и др.);

• уровень использования — локальная СУБД (для настольных систем), архитектура клиент-сервер, многопроцессорная СУБД (с параллельной обработкой данных);

• использование объектной технологии OLE (Object Linking and Embedding — связывание и внедрение объектов);

• возможности интеграции данных из разных СУБД;

• степень поддержки языка SQL и возможности работы с серве­ром баз данных (SQL-сервером);

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

Приложение — программа или комплекс программ, которые обеспечивают автоматизацию обработки данных для прикладной задачи пользователя, работающего с БД. В общем случае с одной БД могут работать несколько различных приложений. Например, если БД моделирует некоторое предприятие, то для работы с ней могут быть созданы приложения: одно — обслуживающее подсис­тему учета кадров, другое — подсистему расчета заработной платы сотрудников, третье — подсистему складского учета и т.д. Предпо­лагается, что приложения, работающие с одной БД, могут работать параллельно и независимо друг от друга, и именно СУБД призвана обеспечить их работу с БД так, чтобы каждое из них выполнялось корректно и учитывало все изменения в БД, вносимые другими приложениями.

Приложения создаются с помощью системы программирования, использующей средства доступа к БД.

Услугами банка данных пользуется большое число пользовате­лей. Поэтому в банке данных предусматривается словарь данных — подсистема банка данных, предназначенная для хранения инфор­мации о структурах данных, взаимосвязях файлов БД друг с другом, типах данных и форматах их представления, кодах защиты и раз­граничения доступа и т.п.

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

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

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

Банк данных и БД в случае расположения на одном компьютере называются локальными, при расположении на нескольких компью­терах, соединенных компьютерной сетью, — распределенными.

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

Системы распределенных баз данных состоят из набора узлов, связанных вместе коммуникационной сетью, в которой:

• каждый узел обладает своими собственными системами баз данных;

• узлы работают согласованно, поэтому пользователь может полу­чить доступ к данным на любом узле сети, как будто все данные находятся на его собственном узле. На рис. 3.19 приведен пример распределенной базы данных.


Рабочая станция

Рабочая станция

Рабочая станция
Рабочая станция

Рабочая станция

Рабочая станция

Рабочая станция

Рабочая станция

Рабочая станция

Рабочая станция

Рабочая станция

Рабочая станция

Рис. 3.19. Распределенная база данных

Распределенные банки и базы данных предоставляют более гиб­кие формы обслуживания многочисленных удаленных пользователей при работе со значительными объемами данных в условиях геогра­фической или структурной разобщенности.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  




Подборка статей по вашей теме: