Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Базы данных и системы управления базами данных

Лекция 1. Введение в базы данных

Краткая аннотация: Рассматриваются основные понятия информационных систем, баз данных и систем управления базами данных. Определяется место и роль баз данных и систем управления базами данных в информационных системах. Обсуждается состав пользователей и распределение обязанностей в информационных системах с базами данных. Дается обзор моделей баз данных. Приводится краткая история развития технологии баз данных и систем управления базами данных.

 

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

 

 

 

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

Системы, накапливающие, хранящие и обрабатывающие информацию, обычно называют информационными системами. Информация, зафиксированная в некоторой форме, пригодной для последующей обработки, передачи и хранения, например, находящаяся в памяти ЭВМ или подготовленная для ввода в ЭВМ, называется данными. В качестве примера информационных систем можно привести систему учета отработанного времени работниками предприятия и расчета заработной платы, систему учета продукции на складе, систему учета книг в библиотеке и т.д. Все вышеперечисленные системы имеют следующие особенности:

- для обеспечения их работы нужны сравнительно низкие вычислительные мощности

- данные, которые они используют, имеют сложную структуру

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

Другими словами, информационная система требует создания в памяти ЭВМ динамически обновляемой модели предметной области: Предметная область – часть реального (или нереального) мира, подлежащая изучению с целью организации управления и, в конечном счете, автоматизации. Предметная область представляется множеством фрагментов, например, предприятие – цехами, дирекцией, бухгалтерией и т.д. Каждый фрагмент предметной области характеризуется множеством объектов и процессов, использующих объекты, а также множеством пользователей, характеризуемых различными взглядами на предметную область.

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

 

 

Рисунок 1.1 – Схема обработки данных в файловой системе

 

Все перечисленные выше ограничения файловых систем являются следствием двух факторов.

1) Определение данных содержится внутри приложений, а не хранится отдельно и независимо от них.

2) Помимо приложений не предусмотрено никаких других инструментов доступа к данным и их обработки.

Для повышения эффективности работы информационных систем в качестве средства хранения и обработки данных в настоящее время используется базы данных, или БД (DatabaseDB), и системы управления базами данных, или СУБД (Database Management SystemDBMS).

База данных – это единое, часто достаточно большое хранилище данных, которое однократно определяется, а затем используется одновременно многими пользователями из разных подразделений [14].

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

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

База данных – совместно используемый набор логически связанных данных и описание этих данных, предназначенный для удовлетворения информационных потребностей пользователей или организации [23].

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

СУБД взаимодействует с прикладными программами пользователя и базой данных и обладает следующими возможностями:

- управляет хранимыми данными во внешней памяти (на внешних запоминающих устройствах);

- управляет данными в оперативной памяти в процессе обработки;

- осуществляет журнализацию изменений и восстановление базы данных после сбоев;

- позволяет определять базу данных, что обычно осуществляется с помощью языка определения данных (DDLData Definition Language);

- позволяет вставлять, обновлять, удалять и извлекать информацию из базы данных, что обычно осуществляется с помощью языка управления данными (DMLData Manipulation Language);

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

Развитая СУБД должна также обладать следующими возможностями:

- поддержка логической и физической целостности данных, обеспечивающей непротиворечивое состояние хранимых данных;

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

- обеспечение многопользовательской работы с базой данных;

- обеспечения безопасности, предотвращающей несанкционированный доступ к базе данных со стороны пользователей и приложений;

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

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

 

 

 

Рисунок 1.2 – Схема обработки данных с помощью СУБД

 

Таким образом, система управления базой данных – важнейший компонент информационной системы. Для создания и управления информационной системой СУБД необходима в той же степени, как для разработки программы на алгоритмическом языке необходим транслятор. Обычно современная СУБД содержит следующие компоненты:

- процессор языка базы данных, обеспечивающий оптимизацию запросов на извлечение и изменение данных, и создание, как правило, машинно-независимого исполняемого внутреннего кода;

- подсистему поддержки времени исполнения, которая интерпретирует отдельные запросы и группы запросов манипулирования данными;

- ядро, которое отвечает за управление данными во внешней и оперативной памяти и журнализацию;

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

На самом деле реальный объем функциональных возможностей, предлагаемых конкретной СУБД, а, следовательно, и набор ее компонент, отличается от продукта к продукту. Например, в СУБД для персонального компьютера может не поддерживаться параллельный совместный доступ, а управление режимом безопасности, поддержанием целостности данных и восстановлением будет присутствовать только в очень ограниченной степени. Однако современные мощные многопользовательские СУБД предлагают все перечисленные выше функциональные возможности и многое другое. На рисунке 1.3 приведена типовая архитектура современной системы управления базами данных.

Процессор языка базы данных включает в себя компилятор запросов (query compiler). Подсистема поддержки времени исполнения включает в себя исполняющую машину (execution engine), менеджер транзакций (transaction manager), процессор транзакций (transaction processor). Ядро СУБД включает менеджеры ресурсовменеджер буферов (buffer manager) и менеджер хранения данных (storage manager).

Компилятор запросов транслирует запрос во внутренний формат системы – план запроса (query plan). План запроса описывает последовательность инструкций, подлежащих выполнению. Часто инструкции плана запроса представляют собой реализации операций «реляционной алгебры», которые будут рассмотрены в лекции 4 «Базовые понятия реляционной модели данных». Компилятор запросов, в свою очередь, состоит из трех частей:

- синтаксического анализатора запросов (query parser), создающего на основе текста запроса древовидную структуру данных;

- препроцессора запросов (query preprocessor), выполняющего семантический анализ запроса - проверку того, что все отношения и атрибуты, упомянутые в запросе, действительно существуют в БД – и функции преобразования дерева, построенного анализатором, в дерево алгебраических операторов, отвечающих исходному плану запроса;

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

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

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

 

Рисунок 1.3 – Типовая структура СУБД

 

СУБД обладают как многообещающими потенциальными преимуществами и достоинствами, так и недостатками, которые мы кратко рассмотрим в этом разделе. К преимуществам и достоинствам можно отнести:

- Контроль избыточности данных;

- Непротиворечивость данных;

- Больше полезной информации при том же объеме хранимых данных;

- Совместное использование данных;

- Поддержка целостности данных;

- Повышенная безопасность;

- Применение стандартов;

- Повышение эффективности с ростом масштабов системы;

- Возможность нахождения компромисса при противоречивых требованиях;

- Повышение доступности данных и их готовности к работе;

- Улучшение показателей производительности;

- Упрощение сопровождения системы за счет независимости от данных;

- Улучшенное управление параллельностью;

- Развитые службы резервного копирования и восстановления.

Не смотря на неоспоримые достоинства и преимущества перед файловыми системами, СУБД обладают рядом недостатков и ограничений:

- Сложность организации;

- Размер занимаемого пространства во внешней и оперативной памяти;

- Стоимость СУБД;

- Дополнительные затраты на аппаратное обеспечение;

- Затраты на преобразование;

- Производительность;

- Более серьезные последствия при выходе системы из строя.

Тем не менее, большинство современных информационных систем построено на основе баз данных и систем управления базами данных.

 

<== предыдущая лекция | следующая лекция ==>
Краткая история развития лесной таксации | История развития технологий баз данных и систем управления базами данных
Поделиться с друзьями:


Дата добавления: 2014-01-20; Просмотров: 1403; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.028 сек.