Системы управления базами данных
Система управления базами данных (СУБД) – это программное обеспечение, которое взаимодействует с прикладными программами пользователя и базой данных и обладает перечисленными ниже возможностями [15].
1. Позволяет создать базу данных, что обычно осуществляется с помощью языка определения данных (DDL – Data Definition Language). Язык DDL предоставляет пользователям средства указания типа данных и их структуры, а также средства задания ограничений для информации, хранимой в базе данных.
2. Позволяет вставлять, обновлять, удалять и извлекать информацию из базы данных, что обычно осуществляется с помощью языка манипулирования данными (DML – Data Manipulation Language). Наличие централизованного хранилища всех данных и их описаний позволяет использовать язык DML как общий инструмент организации запросов, который иногда называют языком запросов (query language). Наличие языка запросов позволяет устранить присущие файловым системам ограничения, при которых пользователям приходится иметь дело только с фиксированным набором запросов или постоянно возрастающим количеством программ, что порождает другие, более сложные проблемы управления программным обеспечением. Наиболее распространённым типом непроцедурного языка является язык структурированных запросов (Structured Query Language – SQL), который в настоящее время определяется специальным стандартом и фактически является обязательным языком для любых реляционных СУБД. (SQL произносится либо по буквам «S-Q-L», либо как мнемоническое имя «SeeQuel».)
3. Предоставляет контролируемый доступ к базе данных с помощью перечисленных ниже средств:
- системы обеспечения защиты, предотвращающей несанкционированный доступ к базе данных со стороны пользователей;
- системы поддержки целостности данных, обеспечивающей непротиворечивое состояние хранимых данных;
- системы управления параллельной работой приложений, контролирующей процессы их совместного доступа к базе данных;
- системы восстановления, позволяющей восстановить базу данных до предыдущего непротиворечивого состояния, нарушенного в результате сбоя аппаратного или программного обеспечения;
- доступного пользователям каталога, содержащего описание хранимой в базе данных информации.
Все СУБД для ПК можно подразделить на три вида:
1. Системы управления базами данных в буквальном смысле этого термина, для которых работа с базами возможна только после запуска в работу этой системы без возможности создания автономных программ, работающих с базами. К этим системам относятся: Access, Paradoх, dBase.
2. Системы, имеющие как средства для работы с базами данных, так и возможности разработки исполняемых в операционной системе пользовательских программ (приложений), т.е. средства разработчика программ – FoхPro.
3. Системы для разработки пользовательских программ для работы с базами данных – Clipper, Clarion.
Важными факторами, определяющими выбор СУБД, являются:
1. Формат базы данных, обеспечивающий возможность обмена информацией с другими приложениями операционной системы. Одним из самых распространённых форматов является dbf-формат, с которым работают dBase, FoхBase, FoхPro, Visual FoхPro, Clipper. Его «понимают» все приложения MS Office. Данные из этих баз можно переносить в Word, Eхcel, Access. Свои собственные форматы данных имеют Clarion, Paradoх, Access.
2. Обеспечение секретности и конфиденциальности данных имеют системы, не ориентированные на разработчика программ: Access, Paradoх. Однако этот фактор может быть реализован при хранении данных на выделенном сервере, где права различных пользователей легко разграничить.
Все современные СУБД поддерживают режимы работы в локальной сети многих пользователей с одной базой данных. Некоторые имеют «мастеров», «построителей» и «генераторы выражений» для ускоренной разработки баз данных, экранных форм, отчётов, стандартных приложений.
В настоящее время известны также так называемые «постреляционные» СУБД, в основе которых лежат модель данных в виде многомерных таблиц (например в системе Cache фирмы InterSystems Сorporation) и широкое использование принципов объектно ориентированного подхода при организации баз данных и программировании.
В локальных и глобальных компьютерных сетях широко применяются серверы: компьютеры и программные средства для обслуживания клиентов – рабочих станций и(или) других серверов.
Примерами серверов могут быть:
- файловый сервер, поддерживающий общее хранилище файлов для всех рабочих станций;
- интернет-сервер, обеспечивающий предоставление информации в глобальной сети Интернет;
- почтовый сервер, обеспечивающий работу с электронной почтой;
- сервер баз данных – СУБД, которая принимает запросы по локальной сети и возвращает информацию, соответствующую запросу.
Термин «сервер баз данных» обычно используют для обозначения всей СУБД, основанной на архитектуре «клиент-сервер», включая и серверную, и клиентскую части. Наиболее распространёнными серверами являются в настоящее время Microsoft SQL Server, Oracle, IBM DB2 Universal DataBase, Informix и др. Размер одной базы данных на этих серверах может достигать миллиона терабайт.
Основная задача систем управления распределёнными базами данных состоит в обеспечении средства интеграции локальных баз данных, располагающихся в некоторых узлах вычислительной сети, с тем, чтобы пользователь, работающий в любом узле сети, имел доступ ко всем этим базам данных как к единой базе.
Возможны однородные и неоднородные распределённые базы данных. В однородном случае каждая локальная база данных управляется одной и той же СУБД. В неоднородной системе локальные базы данных могут относиться даже к разным моделям данных. Сетевая интеграция неоднородных баз данных – очень сложная проблема. Многие решения известны на теоретическом уровне, но пока не удаётся справиться с главной проблемой: недостаточной эффективностью интегрированных систем. Более успешно решается промежуточная задача – интеграция неоднородных SQL-ориентированных систем. Этому в большой степени способствует стандартизация языка SQL.
Примером распределённой СУБД может служить System R*. В данной системе разработчики прикладных программ и конечные пользователи остаются в среде языка SQL. Возможность использования SQL основывается на обеспечении System R* прозрачности местоположения данных. Система автоматически обнаруживает текущее местоположение упоминаемых в запросе пользователя объектов данных; одна и та же прикладная программа, включающая предложения SQL, может быть выполнена в разных узлах сети. При этом в каждом узле сети на этапе компиляции запроса выбирается наиболее оптимальный план выполнения запроса в соответствии с расположением данных в распределённой системе.
Вопросы для самоконтроля
1. Что такое база данных?
2. Какие свойства распределённых баз данных вы знаете?
3. Назовите основные функции баз данных.
4. Что такое реляционная модель базы?
5. Что такое домен в реляционных базах данных?
6. Что такое кортеж в реляционной базе данных?
7. Что такое SQL?
8. В каких СУБД поддерживается иерархия?
9. Какую архитектуру могут иметь централизованные базы данных с сетевым доступом?
10. Чем отличается сервер файлов в базах данных с сетевым доступом от сервера базы данных в архитектуре «клиент-сервер»?
11. Где происходит обработка пользовательских запросов в базах данных с сетевым доступом?
12. Где происходит обработка пользовательских запросов в архитектуре «клиент-сервер»?
13. Что такое система управления базой данных?
14. Что такое индексы базы данных?
15. Что такое транзакция?
16. Что такое таблица базы данных?
17. Что такое первичный ключ таблицы базы данных?
18. Что такое внешний ключ таблицы базы данных?
19. Отношение приведено к 1НФ, если…
20. Отношение приведено к 2НФ, если…
21. Отношение приведено к 3НФ, если…
5. Технологии противодействия
Дата добавления: 2015-08-26; просмотров: 1261;