8.4. Технологии использования систем управления базами данных
Для начального этапа практического использования вычислительной техники характерным являлся так называемый позадачный подход, при котором каждая прикладная программа включала в себя или затребовала при выполнении ввод специфичного набора данных. Это приводило к неоправданному росту трудозатрат на разработку программного обеспечения, на повторный ввод одних и тех же данных в разных форматах, к увеличению количества ошибок, прежде всего, в процессе ввода, в целом затрудняло и замедляло процесс обработки информации с помощью компьютера. Требовало повышенного расхода трудовых и материальных ресурсов.
Вместе с тем, значительную часть информации, обрабатываемой в организации (на предприятии) составляют постоянная информация – о кадрах, оборудовании, номенклатуре продукции и т.д., различного рода нормативные и справочные данные. Одна и та же информация необходима для решения разных задач, реализации нескольких управленческих функций, востребуется обычно самыми разными производственными и иными подразделениями организации. Сведения по одним и тем же объектам, процессам, явлениям формируются и уточняются также в различных подразделениях организации или иных источниках.
Указанные обстоятельства приводят к необходимости использования в вычислительной системе принципа однократного ввода данных, единообразия их описания, специальной методологии объединения первичных данных на основе общих правил их накопления, хранения и обработки, принципа независимости сбора и актуализации данных, т.е. к концепции баз данных.
В современном понимании база данных (БД) (иначе говоря, информационная база) – это специальным образом организованная система хранения массивов описания фрагментов предметной области, обеспечивающая оперативный доступ пользователя к содержательной информации. Состав информации, накапливаемой в базе данных, определяется, прежде всего, предметной областью и кругом решаемых задач.
Впервые базы данных появились в справочных системах. Фактографические справочные системы позволяют вести поиск по элементам формализованного описания объектов предметной области и выдавать в ответ на запрос пользователя эти формализованные описания, а иногда и ссылки на исходные документы. Документальные справочные системы осуществляют поиск по ключевым словам, фигурирующим в текстовых документах, и предоставляют пользователю обычно подборку документов, наиболее полно отвечающих запросу по определенным критериям.
Система управления базами данных (СУБД) (Data Base Management System - DBMS) - это комплекс программных средств, предназначенный для централизованного создания и использования на ЭВМ совокупности баз данных в рамках различных приложений, в интересах определенной совокупности пользователей. СУБД расширяет возможности операционной системы при работе с базами данных. Системы управления базами данных как новый вид программного обеспечения появились в начале 70-х гг. прошлого столетия. Необходимость разработки и применения СУБД как самостоятельной программной системы обусловлено следующим:
- наличие специфических параметров логической и физической организации баз данных, на которые не ориентированы операционные системы и языки программирования;
- для описания баз данных недостаточно возможностей, предоставляемых стандартными прикладными программами, требуется специальное программное обеспечение, создаваемое и используемое с помощью языков программирования СУБД;
- требования по организации доступа к данным диктуют необходимость разработки специальных алгоритмов и управляющих программ;
- процедуры специальной обработки баз данных, обеспечивающие целостность и непротиворечивость данных, декомпозицию запросов, параллельное выполнение транзакций и т.д., а также реализацию операций реляционной алгебры в операционных системах и языках программирования не предусмотрены.
Существуют следующие виды логических (внешних) моделей базы данных: иерархическая, сетевая, реляционная и объектно-ориентированная модели данных. Иерархическая модель данных – это древовидная структура, отражающая вертикальные связи – отношения подчинения между нижестоящими и вышестоящими уровнями расположения элементов информации. Поиск осуществляется по одной из ветвей дерева, в котором каждая вершина имеет только одну связь с вершиной более высокого уровня. Исторически иерархические СУБД появились первыми. Важнейшие недостатки таких СУБД - отсутствие стандарта внешних интерфейсов, невозможность «переноса» прикладных программ. Вместе с тем, разработанное на их основе программное обеспечение используется до сих пор: накоплены огромные массивы актуальной информации. Сетевая модель содержит, помимо вертикальных, горизонтальные связи между элементами информации. Ограничений количества связей, входящих в вершину, не существует. Это позволяет строить сложные поисковые структуры.
Реляционная модель отражает накапливаемую информацию в виде таблиц, над которыми выполняются логические операции (операции реляционной алгебры). В рамках указанной модели таблица называется отношением, строка – кортежем, столбец – атрибутом. Область определения атрибута (домен) - это область, в которой находится множество возможных значений атрибута. Основное требование к отношению в рамках реляционной модели состоит в том, что значения атрибутов должны быть элементарной, неделимой информационной единицей, а это и дает возможность применения в целях обработки математического аппарата реляционной алгебры. Простота и гибкость этой модели данных позволили ей занять лидирующие позиции на соответствующем секторе рынка. Наиболее популярны СУБД: dBase III Plus, FoxBase, FoxPro, Clipper, dBase IV, Clarion, Paradox, Oracle. Имеющиеся негативные моменты в реляционной модели: невозможность представления и манипулирования данными сложной структуры (тексты, пространственные данные).
Объектно-ориентированные модели наиболее близки по своей структуре фрагментам реального мира, поскольку предполагают работу с описаниями его объектов. Важнейшие области применения объектных СУБД – системы автоматизированного проектирования (САПР), моделирование, мультимедиа, управление организацией. Они используются при построении распределенных вычислительных систем. Подобные СУБД отличаются высоким быстродействием, надежностью, представляют разнообразный интерфейс для разработчиков и пользователей. К числу таких СУБД относятся ORACLE 8.0, ONTOS, Jasmine, ODB-Jupiter. Все большее распространение объектно-ориентированных моделей является важной тенденций в использовании СУБД.
Выбор модели определяется, главным образом, объемно-временными характеристиками будущей системы - интенсивностью работы с информацией различных видов и формами ее представления, частотой изменения и обновления данных, количеством одновременно работающих пользователей и т.д., а также степенью и характером взаимосвязи данных, требованиями по разграничению доступа к ним.
Классификация СУБД осуществляется по следующим основным признакам: по используемому языку общении, по выполняемым функциям, по сфере применения, по допустимым режимам работы. По используемому языку общения различаются замкнутые и открытые СУБД. Замкнутые системы имеют собственные самостоятельные языки общения пользователей с БД, которые обеспечивают непосредственное общение с системой в режиме диалога и позволяют работать без программистов. Открытыми системами для общения пользователя с БД используется язык программирования, дополненный операторами языка манипулирования данными (ЯМД), в этом случае необходимо участие квалифицированного программиста.
По выполняемым функциям существующие СУБД можно разделить на операционные и информационные. Информационные СУБД позволяют организовать хранение данных, поиск и выдачу нужной информации из БД и поддерживать их и актуальность. Операционные СУБД предусматривают виды обработки по получению информации, не хранящейся в БД в явном виде.
По сфере применения СУБД классифицируются на универсальные (они настраиваются на любую предметную область путем создания соответствующей базы данных и прикладных программ) и проблемно-ориентированные (ориентируются на определенные процедуры обработки данных, присущие конкретной области применения). По режимам работы различают СУБД с пакетной обработкой и СУБД с телеобработкой.
Для создания, ведения и корректировки баз данных используются пакеты СУБД, которые включают:
- средства поддержки языковых средств – трансляторы с языков описания данных, языков манипулирования данными, языков программирования, редакторов и отладчиков;
- прикладные программные пакеты управления процессами обработки данных (обслуживание задач, поддержка запросов, пополнение и корректировка данных, взаимодействие программ обработки с операционной системой, регулирование доступа и т.д.).
СУБД выполняет следующие группы функций: управляющую, обрабатывающую, сервисную. Управляющие функции заключаются в выполнении операций над файлами – открытие, закрытие, копирование, переименование и т.д., а также над записями, полями записей. Обрабатывающие функции включают в себя отладку и выполнение прикладных программ, предназначенных для осуществления операций с данными. Сервисная функция охватывает различного рода вспомогательные операции и реализуется утилитами.
К числу основных управляющих функций СУБД относятся: управление данными во внешней памяти, управление буферами оперативной памяти, управление трансакциями, журнализация и восстановление БД после сбоев, поддержание языков СУБД. Функция управления данными во внешней памяти включает в себя обеспечение необходимых структур внешней памяти для хранения данных, а также для служебных целей, например, для ускорения доступа к данным. В некоторых реализациях СУБД эта функция опирается на возможности существующих файловых систем.
Функция управления буферами оперативной памяти направлена на увеличение производительности СУБД. Дело в том, что база данных, как правило, намного превышает по объему оперативную память. Если же при обработке информации производится обмен с внешней памятью, то и вся система работает со скоростью внешней памяти. Общесистемная буферизация, которую осуществляет операционная система, недостаточна для целей СУБД. Развитые СУБД, располагая обширной информацией о полезности буферизации той или иной части базы данных, поддерживают свой набор буферов оперативной памяти с особой дисциплиной их замены. Рассматриваемая функция согласуется с алгоритмами журнализации и синхронизации. Вместе с тем, существует направление в развитии СУБД, которое ориентировано на постоянное присутствие всей базы данных в оперативной памяти.
Управление трансакциями необходимо для поддержания логической целостности БД. Под трансакцией понимается последовательность операций над БД, рассматриваемых СУБД как единое целое. Каждая трансакция начинается при целостном состоянии БД и оставляет это состояние целостным после своего завершения. Если трансакция успешно выполнена, СУБД фиксирует произведенные изменения во внешней памяти. В противном случае ни одно из этих изменений никак не отражается на состоянии БД. Механизм трансакций необходим как для однопользовательских, так и для многопользовательских СУБД. Трансакция рассматривается как единица активности пользователя по отношению к БД. При соответствующем механизме управления трансакциями пользователь ощущает себя единственным пользователем СУБД.
Журнализация и восстановление БД после сбоев позволяет достигнуть надежного хранения данных во внешней памяти. Эта функция требует избыточности хранения данных, причем та их часть, которая используется для восстановления последнего согласованного состояния БД после аппаратного или программного сбоя, хранится особенно надежно. В этих целях осуществляется ведение журнала изменений базы данных. Практикуется «упреждающая» запись в журнал (протокол Write Ahead Log): сведения об изменении любого объекта БД фиксируется во внешней памяти журнала раньше, чем они попадают во внешнюю память основной части БД.
Поддержание языков БД. Для работы пользователя с БД используются языки баз данных. В ранних СУБД поддерживалось несколько специализированных по своим функциям языков – входной язык, язык коррекции, язык запросов и т.д. В современных СУБД обычно используется единый интегрированный язык, содержащий все необходимые средства для работы с БД, начиная с ее создания.
Структурно СУБД включает следующие основные части: ядро СУБД (Data Base Engine), компилятор языка БД, набор утилит. Ядро СУБД включает управление данными во внешней памяти, управление буферами оперативной памяти, управление трансакциями и журнализацию. Ядро обладает собственным интерфейсом, недоступным пользователю и используемым в программах, производимых компилятором, а также в утилитах. Ядро является основной резидентной частью СУБД. При использовании архитектуры «клиент-сервер» ядро является основным элементом серверной части системы.
Основная функция компилятора языка БД - трансляция операторов языковых средств БД в некоторую выполняемую программу. Результатом трансляции является выполнимая программа, представляемая в машинных кодах, но чаще в выполняемом внутреннем машинно-независимом коде.
В отдельные утилиты обычно выделяют такие процедуры, которые слишком дорого выполнять с использованием языка БД, например, загрузка БД, сбор статистики, глобальная проверка целостности. Утилиты программируются с использованием ядра СУБД.
Языковые средства СУБД делают доступными функциональные возможности моделей данных для пользователей различных категорий: персонала, выполняющих функции администрирования, разработчиков прикладных программ на основе СУБД, конечных пользователей. Языковые средства реализуются в их явной синтаксической форме (для высококвалифицированных пользователей), либо в форме различного рода меню, диалоговых сценариев или заполняемых пользователем таблиц.
Основные функции языковых средства - описание представления базы данных на управляемых уровнях архитектуры системы, а также инициирование выполнения операций манипулирования данными.
Первая из этих функций обеспечивается языком описания данных (ЯОД Shema Definision Language). Его часто называют языком определения данных. Описание данных средствами ЯОД называют схемой базы данных. Оно включает описание логической структуры данных и налагаемых на нее ограничений целостности в рамках тех правил, которые регламентированы моделью данных используемой СУБД. Помимо указанных функций, ЯОД некоторых СУБД обеспечивает возможности задания ограничения доступа к данным или полномочий пользователей.
Язык манипулирования данными (ЯМД, Shema Manipulation Language) позволяет запрашивать предусмотренные в системе операции над данными из базы данных, т. е. содержит набор операторов манипулирования данными, позволяющий заносить данные, удалять, модифицировать или выбирать их. Аналогично ЯОД, ЯМД не обязательно выступает в качестве синтаксически самостоятельного языка СУБД.
Современные языки СУБД не только реализуют функции определения и манипулирования данными, но и располагают средствами, свойственными традиционным языкам программирования. Они могут использоваться как функционально полное средство для создания прикладных программ и для формулировки запросов пользователей к БД. Такие языки называют автономными.
Конечные пользователи СУБД разделяются на две категории - прямые и косвенные. Те, кто относится к группе прямых пользователей, в отличие от косвенных, самостоятельно без посредников общаются с ЭВМ. Они способны разрабатывать новые приложения.
В настоящее время акцент разработки приложений все более переносится с профессиональных программистов на конечных пользователей. Эта тенденция имеет очевидные достоинства: приложения разрабатываются быстрее; реализуются именно те алгоритмы, которые необходимы пользователю в момент разработки приложений; снижается себестоимость программной реализации системы и упрощается весь процесс ее разработки. Все это становится возможным, если в состав СУБД входят языки конечных пользователей, которые относят к классу автономных непроцедурных языков высокого уровня. Сегодня почти для всех промышленных систем такие языковые средства разработаны.
Языки конечных пользователей позволяют осуществлять выборку данных, формировать отчеты, разрабатывать новые приложения и запрашивать выполнение уже разработанных. В некоторых языках такого типа обеспечены также возможности обновления базы данных и реализация достаточно сложных обработок данных. Для изучения простейших возможностей языков конечных пользователей требуется обычно от 1 до 3 дней. Такой уровень подготовки позволяет пользователю разрабатывать несложные приложения.
Использование всего спектра языков СУБД в полной мере, необходимой для формирования и выполнения сложных процедур обработки данных, требует профессиональной подготовки.
- Московский государственный университет
- Оглавление
- Раздел 1. Методология информационных технологий управления
- Глава 1. Информация и управление
- 1.1. Понятие информации.
- Свойства информации.
- 1.3. Виды информации
- Источники информации
- Виды информации на различных уровнях управления
- Глава 2. Структура информационных технологий управления
- 2.1. Сущность информационной технологии управления
- 2.2. Виды информационных технологий управления
- 2.3. Объекты информационных технологий управления
- 2.4. Элементы информационных технологий управления
- 2.5. Методология проектирования автоматизированных информационных технологий управления
- 2. Технические науки.
- 2.2. Информатика
- 5.1. Геология, геохимия, геофизика и горные науки.
- 6.2. Философия, социология, психология и правовые науки.
- Раздел 2. Организация и средства информационных технологий обеспечения управленческой деятельности
- Глава 3. Информационная база управления
- 3.1. Предметная область использования информационных технологий
- 3.2. Понятие и структура информационной базы управления
- 3.3. Информационные ресурсы и фонды
- 3.4. Языковые средства
- 3.5. Словари.
- 3.6. Ведение словарей
- Глава 4. Информационные процессы
- 4.1. Понятие и виды информационных процессов
- 4.2. Сбор (получение) информации.
- 4.3. Оценка информации в управлении
- 4.4. Передача информации.
- 4.5. Накопление информации
- 4.6. Хранение информации
- 4.7. Обработка информации
- 4.8. Выдача (представление) информации
- Глава 5. Информационные потоки
- 5.1. Информационные потоки в системе управления
- 5.2. Виды информационных потоков
- 5.3. Методы исследования информационных потоков
- 5.6. Оптимизация информационных потоков
- Глава 6. Аппаратные средства информационных технологий
- 6.1. Организационная техника
- 6.2. Вычислительная техника
- 6.3. Персональные компьютеры
- 6.4. Суперкомпьютеры
- 6.5. Периферийные устройства персонального компьютера
- 6.6. Презентационная техника
- Раздел 3. Организация компьютерных информационных систем
- Глава 7. Инструментальные средства компьютерных технологий информационного обслуживания управленческой деятельности
- 7.1. Основы построения инструментальных средств информационных технологий
- 7.2. Компьютерные технологии подготовки текстовых документов
- 7.3. Компьютерные технологии обработки экономической информации на основе табличных процессоров
- 8.4. Технологии использования систем управления базами данных
- 7. 5. Сетевые компьютерные технологии
- 7.6. Компьютерные технологии распределенной обработки данных
- 7.7. Компьютерные технологии поиска документальной информации
- 7.8. Технологии интегрированных программных пакетов
- 7.9. Компьютерные технологии интеллектуальной поддержки управленческих решений
- Темы курсовых работ
- Информация как главное средство управления.
- Информационные ресурсы в предпринимательстве.
- Вопросы для подготовки к экзамену
- Литература