Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

01 Лекция - Файловые системы Понятие СУБД

.pdf
Скачиваний:
30
Добавлен:
13.04.2015
Размер:
634.35 Кб
Скачать

2. Возможность выделения по запросу из всех данных, хранящихся в БД,

только необходимых и в требуемой форме(структуре и форматах).

Наиболее широко БД используются в управленческой деятельности бла-

годаря следующим свойствам:

Скорость. Возможный доступ к информации за требуемое время.

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

щиты).

Гибкость. Легко вносимые изменения и дополнения в БД позволяют получать ответы на вопросы, которые ранее оставались без ответа.

Целостность. Уменьшилась степень дублирования данных и ликвиди-

рована их противоречивость; упорядочился процесс обновления и восстанов-

ления БД после сбоев; появилась возможность управления параллельного об-

щения с БД нескольких прикладных программ.

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

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

нием группы, предприятия, региона, страны, мира... Задача базы данных со-

стоит в хранении всех представляющих интерес данных в одном или несколь-

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

ных исключается, и вероятность сохранения противоречивых данных мини-

мизируется.

Таким образом, создание баз данных преследует две основные цели: по-

низить избыточность данных и повысить их надежность.

Замечание. Таким образом, СУБД решают множество проблем, кото-

рые затруднительно или вообще невозможно решить при использовании фай-

ловых систем. При этом существуют приложения, для которых вполне до-

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

ных. Другими словами, современные системы управления файлами и управле-

ния базами данных представляют собой весьма совершенные инструменты,

каждый из которых может быть успешно применен в соответствующей об-

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

мент приносит максимальную пользу именно в той области, для которой он создан.

По мере развития систем баз данных, менялись принципы организации данных в них: первоначально данные представлялись на основе иерархиче-

ской, а в последствии сетевой модели. В конце 1970-х – начале 1980-х годов начали появляться первые реляционные продукты. В настоящее время си-

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

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

рованные системы, тем не менее, развиваются, хотя темпы их развития и сдер-

живаются медленным принятием соответствующих стандартов. Кроме того,

многие коммерческие реляционные системы приобретают объектно-ориенти-

рованные черты. На основании этого, можно предположить, что в будущем объектно-ориентированные системы будут постепенно вытеснять реляцион-

ные.

В настоящее время ведутся исследования в следующих направлениях:

1.дедуктивные системы1;

2.экспертные системы;

3.расширяемые системы2;

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

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

4.объектно-ориентированные системы3.

1.2Понятие БД и СУБД

Система баз данных – это компьютеризированная система, основная за-

дача которой – хранение информации и предоставление доступа к ней по тре-

бованию.

Система баз данных включает в себя (Рис.1.1):

1.данные, непосредственно сохраняемые в базе данных;

2.аппаратное обеспечение;

3.программное обеспечение;

4.пользователей:

4.1.прикладные программисты;

4.2.конечные пользователи;

4.3.администраторы баз данных.

Прикладные

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

Конечные

программисты

пользователи

 

База данных

Рис.1.1- Система баз данных.

1.2.1Данные.

Данные в базе данных являются интегрированными и, как правило, об-

щими. Понятие интегрированных данных подразумевает возможность пред-

ставления базы данных как объединение нескольких отдельных файлов дан-

3 Объектно-ориентированная база данных (ООБД) — база данных, в которой данные моделируются в виде объектов, их атрибутов, методов и классов

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

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

ных несколькими различными пользователями.

1.2.2Аппаратное обеспечение.

Каппаратному обеспечению системы относятся накопители для хране-

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

боты ПО системы.

1.2.3Программное обеспечение.

Программное обеспечение является промежуточным слоем между соб-

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

(DBMS). Все запросы пользователей обрабатываются СУБД.

Таким образом, СУБД – это специализированное программное обеспе-

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

печения.

1.2.4Пользователи.

Прикладные программисты – отвечают за написание прикладных про-

грамм, использующих базу данных.

Конечные пользователи – работают с базой данных непосредственно, че-

рез рабочую станцию или терминал. Конечный пользователь может получить доступ к базе данных используя соответствующее прикладное ПО.

Администраторы базы данных – технические специалисты, осуществля-

ющие создание БД, технический контроль работы СУБД и др. операции. Ад-

министраторы базы данных отвечают за реализацию решений администратора данных. Администратор данных решает, какие данные необходимо хранить в

БД, обеспечивает поддержание порядка при обслуживании и использовании

хранимых в БД данных.

Функции администратора базы данных:

1.определение концептуальной схемы. Администратор БД опреде-

ляет какие именно данные необходимо сохранять в БД. Этот процесс обычно называют логическим (или концептуальным) проектированием БД. После определения содержимого БД на абстрактном уровне, администратор БД со-

здает соответствующую концептуальную схему, с помощью концептуального ЯОД.

2. Определение внутренней схемы. Администратор БД решает, как данные должны быть представлены в хранимой БД. Этот процесс называют физическим проектированием. После завершения физического проектирова-

ния администратор БД с помощью внутреннего ЯОД должен создать соответ-

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

ренней и концептуальной схемой.

3.Взаимодействие с пользователями. Администратор БД обеспечи-

вает пользователей необходимыми им данными. Для этого администратор БД должен написать (или оказать пользователям помощь в написании) необходи-

мых внешних схем. Кроме этого необходимо определить отображение между внешней и концептуальной схемами.

4.Определение правил безопасности и целостности.

5.Определение процедур резервного копирования и восстановления.

6.Управление производительностью и реагирование на изменяющи-

еся требования.

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

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

ные данные. "Постоянные" данные на самом деле могут недолго оставаться

таковыми, поскольку данные в БД должны отражать об изменчивых объектах реального мира и отношениях между ними.

Использование баз данных для хранения информации позволяет органи-

зовать централизованное управление данными, что обеспечивает следующие преимущества:

1.возможность сокращения избыточности;

2.возможность устранения (до некоторой степени) противоречиво-

сти;

3.возможность общего доступа к данным;

4.возможность соблюдения стандартов;

5.возможность введения ограничений для обеспечения безопасно-

сти

6.возможность обеспечения целостности данных;

7.возможность сбалансировать противоречивые требования;

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

граммное обеспечение отделяется от данных, хранимых БД, изменения, вно-

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

1.3Уровни абстракции в СУБД. Функции абстрактных данных

Рис.1.2- Трехуровневая модель организации баз данных

Существует 3 уровня архитектуры СУБД (Ошибка! Источник ссылки

не найден.):

1.Внутренний уровень - наиболее близкий к физическому хранению.

Он связан со способами хранения информации на физических устройствах

хранения;

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

3.Концептуальный уровень - является промежуточным между двумя первыми. Этот уровень связан с обобщенными представлениями пользовате-

лей, в отличие от внешнего уровня, связанного с индивидуальными представ-

лениями пользователей.

1.4Представления

Соответственно трем уровням архитектуры выделяют три уровня аб-

стракции данных в СУБД.

1.4.1Внешний уровень – внешнее представление

Внешний уровень - индивидуальный уровень пользователя. Пользова-

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

телем с любым уровнем профессиональной подготовки. Каждый пользователь имеет свой язык общения с СУБД. Для программиста - это какой-либо язык программирования, для пользователя - язык запросов или язык, основанный на формах и меню. Любой из этих языков включает подъязык данных, т.е. мно-

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

рый также обеспечивает на связанные с БД возможности.

Представление отдельного пользователя о БД на внешнем уровне архи-

тектуры называют внешним представлением. Т.о. внешнее представление - это содержимое БД, каким его видит отдельный пользователь. Например, сотруд-

ник отдела кадров видит БД как набор записей о сотрудниках плюс набор за-

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

тельно совпадают с хранимыми записями. Подъязык данных пользователя определен в терминах внешних записей. Каждое внешнее представление опре-

деляется средствами внешней схемы, которая, в основном, состоит из опреде-

лений каждого типа записей во внешнем представлении.

1.4.2Концептуальный уровень – концептуальное представление

Концептуальное представление - это представление всей информации БД в несколько более абстрактной форме по сравнению с физическим спосо-

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

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

ление состоит из множества экземпляров каждого типа концептуальной за-

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

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

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

нию информации. Концептуальное представление, т.о. обеспечивает незави-

симость данных от способа их хранения.

1.4.3Внутренний уровень – внутреннее представление

Внутреннее представление - это представление нижнего уровня всей БД.

Оно состоит из множества экземпляров каждого типа внутренней записи.

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

ние не связано с физическим уровнем и в нем не рассматриваются физические записи. Внутреннее представление предполагает существование бесконечного линейного адресного пространства. Подробности отображения этого про-

странства на физические устройства хранения не включены в общую архитек-

туру из-за сильной зависимости от системы.

Внутреннее представление описывается с помощью внутренней схемы,

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

Между тремя уровнями представлений имеются два уровня отображе-

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

1.5Функции СУБД

1.Определение данных. СУБД должна допускать определения дан-

ных (внешние схемы, концептуальную и внутреннюю схемы, соответствую-

щие отображения). Для этого СУБД включает в себя языковый процессор для различных языков определений данных.

2.Обработка данных. СУБД должна обрабатывать запросы пользо-

вателя на выборку, а также модификацию данных. Для этого СУБД включает

всебя компоненты процессора языка обработки данных.

3.Безопасность и целостность данных. СУБД должна контролиро-

вать запросы и пресекать попытки нарушения правил безопасности и целост-

ности.

4.Восстановление данных и дублирование. СУБД должна обеспе-

чить восстановление данных после сбоев.

5.Словарь данных. СУБД должна обеспечить функцию словаря дан-

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

ектов системы. Словарь интегрирован в определяемую им БД и, поэтому, со-

держит описание самого себя.

6. Производительность. СУБД должна выполнять свои функции с максимальной производительностью.

1.6Экспертные системы и базы знаний

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

ские знания в экспертных системах.

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