Технологии использования систем управления базами данных 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Технологии использования систем управления базами данных



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

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

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

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

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

Система управления базами данных (СУБД) (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 дней. Такой уровень подготовки позволяет пользователю разрабатывать несложные приложения.

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

 



Поделиться:


Последнее изменение этой страницы: 2017-02-22; просмотров: 661; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.191.223.123 (0.016 с.)