Автоматизированные банки данных в системах управления водным транспортом. Учебное пособие
.pdf
Пользователи банка данных
Признаки
|
Регулярность |
|
|
Форма представления |
|
|
|
|
|
||||
|
|
|
запросов и |
|
|
Уровень компетенции |
|||||||
|
обращения к БнД |
|
|
|
|
||||||||
|
|
|
затребованной |
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Пользователи |
|
|
Постоянные |
|
|
|
Пользователи |
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
группы доступа I |
||||
|
|
|
|
|
|
|
-задачи |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Пользователи |
|
|
Разовые |
|
|
|
Пользователи |
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
группы доступа II |
||||
|
|
|
|
|
|
|
-люди |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Пользователи – |
|
Пользователи – |
прикладные |
|
непрограммисты |
программисты |
|
|
|
|
|
|
|
|
Рис. 3. Классификация пользователей банка данных АС
Основным подходом к проектированию является подход "от реального мира". Подход "от запросов пользователей" используется для уточнения границ ПО. Наибольший эффект он достигает в процессе эксплуатации АС, когда появляется возможность накапливать информацию о содержании произвольных запросов и необходимость корректировать границы ПО и состав элементов информационной модели.
По форме представления запросов и затребованной информации различают: пользователи – задачи и пользователи – люди.
Пользователи – задачи – это прикладные задачи АС, которые в процессе реализации периодически обращаются к БнД с регламентированными по форме и по содержанию запросами. Представляемая им информация соответствующим образом формируется и обрабатывается на основании принятых в системе формальных правил и соглашений.
Пользователи – люди – это пользователи – прикладные программисты и непрограммисты, которые обращаются в процессе функционирования АС к БнД с произвольными или регламентированными по содержанию запросами. Представляемая им информация должна иметь форму, удобную для восприятия человеком: в виде текста, таблиц с пояснениями, графиков и т.п.
Пользователи – прикладные программисты это специалисты в области обработки данных, выполняющие программирование функциональных задач, то есть разрабатывающие прикладные программы. Пользователи этой группы обычно умеют работать на нескольких алгоритмических языках программирования, знакомы со средствами обработки, имеющимися в составе используемого БнД.
Для обеспечения нормальной работы этой группы пользователей в БнД предусматривается наличие словаря данных и хорошо поставленной службы слежения за его состоянием. Из словаря данных пользователи узнают о наличии соответствующих типов данных, их структуре и связях между ними, обо всех изменениях, происходящих в структуре информационной модели.
Пользователи – непрограммисты это многочисленная группа лиц, являющихся специалистами в своей области деятельности (руководители подразделений предприятия, управленческий персонал и т.д.), для удовлетворения информационных потребностей которых и создается БнД АС.
Пользователей – непрограммистов называют конечными пользователями. Они не имеют специальной подготовки по программированию и охотнее обращаются к БнД, если не требуется много затрат и дополнительных знаний на подготовку запросов. Для данной группы пользователей идеальной является информационновычислительная система, общение с которой выполняется на естественном языке. Поэтому при разработке БнД целесообразно обеспечивать конечных пользователей специальным формализованным языком запросов, похожим на естественный язык, и работать на этом языке в режиме диалога "пользователь – система", целью которого является уточнение запроса пользователя, оказание пользователю помощи в ознакомлении с возможностями системы.
По уровню компетенции пользователей делят на группы, характеризующиеся возможностью их доступа к тем или иным данным. В этом случае БнД располагает специальными средствами для обеспечения санкционированного доступа пользователей к строго определенной части данных.
Рассмотренные выше группы пользователей называет внешними пользователями БнД. Со стороны внешних пользователей к банкам данных предъявляются определенные требования, которые необходимо учитывать при их проектировании. Основными из них являются требования, в которых БнД должен:
●удовлетворять актуальным информационным потребностям внешних пользователей;
●обеспечивать возможность хранения и модификации больших объемов многоаспектной информации;
●удовлетворять выявленным и вновь возникающим потребностям внешних пользователей;
●обеспечивать заданный уровень достоверности хранимых данных и их не противоречивость;
●обеспечивать доступ к данным только пользователей с соответствующими полномочиями;
●обеспечивать возможность поиска данных по произвольной группе признаков;
●удовлетворять заданным требованиям производительности при обработке запросов;
●иметь возможность реорганизации и расширения при изменении границ ПО;
●обеспечивать простоту и удобство обращения внешних пользователей за данными;
●обеспечивать возможность одновременного обслуживания большого числа разнородных внешних пользователей.
Кроме того, так как услугами БнД пользуется большое число разнородных пользователей, то при проектировании его должны предусматриваться: специальное средство приведения всех запросов к единой терминологии; специальные методы эквивалентных грамматических преобразований запросов для построения оптимальных процедур их обработки и методы организации доступа к одним и тем же данным различных пользователей при совпадении во времени поступивших запросов.
Таким образом, из выше сказанного следует, что банк данных – это информационно-обеспечивающая подсистема, реализующая централизованное управление данными в интересах всех пользователей АС, в состав которой она входит.
2. Структура и состав банка данных
Банк данных включает следующие элементы (рис.4): базу данных (БД), систему управления базой данных (СУБД), словарь данных (СД), администратор базы данных (АБД), аппаратно-програмный комплекс и обслуживающий персонал.
Аппаратно-программный комплекс представляет собой вычислительную среду, обеспечивающую эффективное функционирование БнД. Состоит из аппаратных и программных средств (операционной системы), обычно входящих в конфигурацию, используемой ЭВМ.
База данных в общем случае – это датологическое представление информационной модели объекта управления.
В БД применяются различные уровни абстрагирования для разных пользователей и процессов обработки данных. При размещении БД на устройствах внешней памяти, например на магнитных дисках, (МД), используется самый нижний уровень абстрагирования, который называют физическим (физическая база данных – ФБД). Это уровень бит (или байт) и физических адресов на запоминающих устройствах (ЗУ). Для удобства конечных пользователей применяются другие уровни абстрагирования, опирающиеся на логические структуры данных и имеющие дело с абстракциями, представленными с помощью естественного языка и средств отображения, привычных для работы человека.
Система управления базой данных – это специальный пакет программ, с помощью которого реализуется централизованное управление базой данных и обеспечивается доступ к данным.
СУБД позволяет максимально удовлетворить все ранее перечисленные требования внешних пользователей к БнД посредством обеспечения:
●сокращения избыточности хранимых данных;
●устранения противоречивости хранимых данных;
●многоаспектного использования данных;
●комплексной оптимизации, предусматривающей наилучшее обслуживание пользователей за счет рационального выбора структур хранения данных;
●возможности санкционированного доступа к данным;
●независимости прикладных программ от данных.
Банк данных
База данных
СУБД
Словарь данных
Администратор базы данных
Обслуживающий
персонал
Аппаратнопрограммный комплекс
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Аппаратные |
|
|
Операционная |
|||
средства |
|
|
система |
|||
|
|
|
|
|
|
|
Рис.4. Структурное построение банка данных
Существует несколько вариантов СУБД. В каждой СУБД прежде всего имеются трансляторы компиляторы либо интерпретаторы с языка описания данных (ЯОД) и языка манипулирования данными (ЯМД), единые, для всей БД. При создании развитых интегрированных БнД могут использоваться несколько разнотипных СУБД, в этом случае разрабатываются ЯОД и ЯМД, обеспечивающие работу с данными любой локальной части БнД.
Язык описания данных (ЯОД) – это язык высокого уровня, предназначенный для задания схемы базы данных. С его помощью описываются типы данных, подлежащих хранению или выборки из БД, их структура и связи между собой. В соответствии с заданным описанием СУБД может найти в базе требуемые данные, правильно
преобразовать их и передать, например, в программу задачи АС, которой они потребовались. При записи данных в базу СУБД определяет место в памяти ЭВМ для их размещения, преобразует в заданный вид и устанавливает необходимые связи.
В зависимости от алгоритма работы конкретной СУБД возможны различные варианты обработки исходных массивов данных, составленных на ЯОД. В ряде СУБД делается различие между заданием всей схемы БД и заданием ее частей – подсхем.
Язык манипулирования данными (ЯМД) – это язык запросов к базе данных, он представлен системой команд манипулирования данными. Например: а) произвести выборку из базы данного Xi. , значение которого удовлетворяет заданным условиям, б) произвести выборку всех Xi , удовлетворяющих заданным условиям, в) найти в базе позицию данного и поместить туда его новое значение и т.д. При выборке нескольких Xi с помощью команд ЯМД осуществляется продвижение по БД от одного данного к. другому по соответствующим связям между ними. Для этого необходимо знать реализованную в базе структуру данных.
СУБД в зависимости от способа реализации ЯМД подразделяют на две группы: СУБД с включающим языком и СУБД с базовым языком. В первом случае в качестве включающего языка принимается один из общепринятых алгоритмических языков.
В СУБД с базовым языком разрабатывается собственный алгоритмический язык, позволяющий, кроме операций манипулирования данными, выполнять арифметические операции, операции ввода – вывода через терминалы и т.п. Некоторые СУБД являются системами комбинированного типа, т.е. имеют как базовый, так и включающие языки.
Примерная схема взаимодействия машинной программы задачи АС с СУБД приведена на рис.5. Передачу данных между рабочей областью ввода-вывода прикладной программы и БД обеспечивают команды манипулирования данными, которые инициируются прикладной программой и работают на основании имеющегося описания требуемых данных. СУБД и базу данных можно представить как некоторое внешнее устройство, с которого считываются данные (либо куда записываются данные), управляемое с помощью команд ЯМД.
Машинная
программа
START |
|
|
|
|
|
. |
|
|
|
|
|
|
|
СУБД |
|||
. |
|
|
|||
|
|
|
|
||
. Команда |
|
|
|
|
|
|
|
|
|
||
|
ЯМД |
|
|
|
|
|
Команда |
|
|
|
|
|
ЯМД |
|
|
|
|
.
.
.
RETURN
Рабочая
область ввода-вывода
Инициализация передачи данных и их редактирование
База данных
Рис.5. Схема взаимодействия машинной программы задачи АС с СУБД
Для СУБД с включающим языком, прикладная программа может инициировать команды ЯМД двумя способами. Первый связан с вызовом специальных соответствующих подпрограмм. СУБД, при котором необходимое редактирование прикладных программ выполняется обычным образом операционной системой, под управлением которой работает СУБД. Второй – с использованием специальных операторов (команд ЯМД), включенных в состав операторов применяемого алгоритмического языка, который называется расширенным включающим языком.
Внекоторых СУБД имеются специальные средства обеспечения защиты данных от некомпетентного (или несанкционированного) их использования и сбоев аппаратных средств, средства контроля достоверности данных, накопления статистики использования тех или иных данных и др.
Программы СУБД выполняются непосредственно под управлением операционной системы (ОС) ЭВМ, поэтому при рассмотрении процессов управления базой данных на физическом уровне необходимо рассматривать конкретную ОС ЭВМ.
Словарь данных представляет собой специальную систему в составе БнД, предназначенную для хранения единообразной и централизованной информации обо всех ресурсах данных конкретного БнД. В словаре данных содержатся сведения: об объектах, их свойствах
иотношениях данного объекта управления; о данных, хранимых в БД (их наименования, смысловое описание, структура, связи с другими данными); о возможных значениях и форматах представления данных; об источниках возникновения данных; о кодах защиты и разграничениях доступа к данным со стороны пользователей и др.
Словарь данных призван способствовать уменьшению избыточности и противоречивости данных, хранить централизованное описание данных, изменять описание существующих, удалять устаревшие данные и т.п.
Внастоящее время различают: интегрированный и независимый словарь данных. Интегрированный словарь данных предусматривает использование СУБД с программными средствами ведения словаря, а независимый словарь данных – разработку специального пакета программ для ведения словаря, требующего дублирования описаний данных – в СУБД и в словаре. Что приводит к ухудшению функционирования системы в целом.
Администратор базы данных – это лицо (или группа лиц),
реализующее в целом управление и пользование базой данных. В БнД база данных выступает как объект управления, а в качестве управляющего органа – группа специалистов, знакомых с теорией систем обработки данных и спецификой объекта управления данной информационной системы и реализующих централизованное управление БД посредством СУБД.
Основная функция администратора базы данных – обеспечение структур данных и взаимосвязей между ними, эффективных для обслуживания всего коллектива пользователей. Внедрение БнД занимает довольно продолжительное время по мере развития АС, разработки и интеграции программ задач функциональных подсистем
АС, расширения БД. Поэтому функции администратора базы данных охватывают этапы обоснования структуры, проектирования, генерации исходного варианта, развития и поддержания БД.
В функции администратора базы данных входит:
●согласовывать с пользователями и решать вопросы организации данных в БнД конкретной АС, устанавливать связи между данными;
●координировать работы по проектированию, реализации и ведению БД, учитывать текущие и перспективные запросы пользователей, следить чтобы данные в БнД находились в актуальном состоянии;
●решать вопросы расширения границ БД в связи с развитием АС
иувеличением числа решаемых задач;
●разрабатывать и реализовывать меры по обеспечению защиты данных от искажения и несанкционированного доступа; разграничения доступа к данным различных пользователей;
●выполнять работы по ведению словаря данных; устранять избыточность данных и обеспечивать их достоверность;
●обеспечивать обработку запросов пользователей в приемлемое для них время;
●координировать вопросы технического обеспечения системы аппаратными средствами, исходя из требований БнД к оборудованию;
●координировать работы системных программистов, разрабатывающих дополнительное программное обеспечение для улучшения эксплуатационных параметров системы;
●координировать работы прикладных программистов, разрабатывающих новые программы АС, выполнять их проверку для включения в состав программного обеспечения системы и др.
3. Многоуровневая архитектура банка данных
Для практической реализации принципа независимости прикладных программ от данных в структуру БнД вводится логический уровень – модель данных, которая отображает информационное содержание БД, но подробности организации физического хранения данных в ФБД в ней отсутствуют. Модель имеет свою схему, в которой отражается структура ее данных, имена записей, имена и форматы полей. Для работы с данными модели разрабатывается свой язык описания данных и язык манипулирования данными.
В прикладных программах (ПП) запросы к данным БД должны выражаться с помощью языков и терминов принятой модели данных (МД). Согласование запросов от схем МД к физической базе данных возлагается на СУБД. При таком подходе архитектура БнД представляется схемой:
< модель данных – физическая база данных >
Банки данных и применяемые СУБД функционируют на базе развитых ЭВМ с мощными операционными системами. Оказалось целесообразным часть задач обработки данных, хранимых в физической базе данных (ФБД) возложить на операционную систему ЭВМ. Обычно при проектировании СУБД не разрабатывают программы манипулирования данными на физическом уровне, а используют программы методов доступа ОС. Такой подход обеспечивает относительную независимость операций хранения и обработки данных от используемых аппаратных средств. Для реализации изложенного подхода требовалось ввести в архитектуру банка данных дополнительный уровень представления хранимых данных – так называемую внутреннюю модель базы данных, т.е. реализовать схему:
< модель - внутренняя модель - физическая база данных >
Во внутренней модели база данных представляется в виде совокупности хранимых файлов, для которых известна структура хранимых записей, определены служебные поля, известны методы доступа СУБД к этим записям.
Изложенный подход определил построение двухуровневой архитектуры банка данных (рис.6).
Пользователи составляют прикладные программы только опираясь на термины и возможности модели данных (МД). СУБД
