Понятия о базах данных и системах управления ими. Классификация баз данных. Основные средства обработки данных

Вид материалаДокументы

Содержание


База данных. инфологическая модель базы данных. основные виды моделей. проектирование баз данных
Реляционная база данных и ее особенности. виды связей между реляционными таблицами
Подобный материал:
ПОНЯТИЯ О БАЗАХ ДАННЫХ И СИСТЕМАХ УПРАВЛЕНИЯ ИМИ. КЛАССИФИКАЦИЯ БАЗ ДАННЫХ. ОСНОВНЫЕ СРЕДСТВА ОБРАБОТКИ ДАННЫХ

Базы данных являются одним из основных компонентов современных информационных систем.

Информационная система — это взаимосвязанная совокупность средств, методов и персонала, используемых для хранения, обработки и выдачи информации.

Цель любой информационной системы — обработка информации конкретной предметной области.

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

База данных — это информационные структуры, содержащие взаимосвязанные данные о реальных объектах.

Особенностями такой совокупности данных являются:
  • достаточно большие объемы информации;
  • максимально возможная компактность хранения данных;
  • возможность извлечения из базы данных разнообразной информации в определенной предметной области;
  • удобные для пользователя вид и форма извлекаемой информации;
  • высокая скорость доступа к данным;
  • надежность хранения информации и возможность Предоставления санкционированного доступа к данным Шля отдельных пользователей;
  • удобство и простота конструирования пользователем запросов, форм и отчетов для выборки данных. Создание базы данных, ее поддержка и обеспечение Доступа пользователей к ней осуществляется с помощью специального программного инструмента — системы управления базами данных.

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

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

Централизованная база данных хранится в памяти одной машины.

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

Централизованные базы данных по способу доступа делятся на:
  • базы данных с локальным доступом (данные и процедуры их обработки хранятся на одной машине);
  • базы данных с удаленным (сетевым) доступом. СУБД с удаленным доступом могут быть построены с использованием архитектур файл-сервер и клиент-сервер.

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

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

БАЗА ДАННЫХ. ИНФОЛОГИЧЕСКАЯ МОДЕЛЬ БАЗЫ ДАННЫХ. ОСНОВНЫЕ ВИДЫ МОДЕЛЕЙ. ПРОЕКТИРОВАНИЕ БАЗ ДАННЫХ

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

Информационный объект — это описание некоторой сущности (явления, реального объекта, процесса) в виде совокупности логически связанных реквизитов. Например, информационный объект Студент описывает некоторую сущность — студент. Реквизитный состав этого информационного объекта, т. е. его структура, следующий: № группы, ФИО, № зачетной книжки, дата рождения. Информационный объект имеет множество реализаций — экземпляров.

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

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

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

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

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

Процесс проектирования информационных систем является достаточно сложной задачей. Он начинается с построения инфологической модели данных, т. е. идентификации сущностей. Затем необходимо выполнить следующие шаги процедуры проектирования даталогической модели, т. е. мифологическая модель должна быть : отображена в компьютероориентированную даталогическую модель, «понятную» СУБД.
  • Представить предметную область в виде совокупности отдельных независимых друг от друга объектов, каждый из которых будет описываться своей таблицей.
  • Для каждой таблицы определить ключевые поля; установить связи между таблицами; для каждой связи определить тип.
  • Разработать структуру каждой таблицы: перечень полей, их типы и свойства.
  • Заполнить таблицы данными.
  • Разработать необходимые запросы к БД, входные и выходные формы и отчеты.
  • Предусмотреть возможность автоматизации часто выполняемых действий путем создания макросов и программных модулей.



РЕЛЯЦИОННАЯ БАЗА ДАННЫХ И ЕЕ ОСОБЕННОСТИ. ВИДЫ СВЯЗЕЙ МЕЖДУ РЕЛЯЦИОННЫМИ ТАБЛИЦАМИ

Реляционная база данных — это совокупность взаимосвязанных таблиц, каждая из которых содержит информацию об объектах определенного типа.

Строка таблицы содержит данные об одном объекте (например, товаре, клиенте), а столбцы таблицы описывают различные характеристики этих объектов — атрибутов (например, наименование, код товара, сведения о клиенте).

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

В реляционной базе данных каждая таблица должна иметь первичный ключ — поле или комбинацию полей, которые единственным образом идентифицируют каждую строку таблицы. Если ключ состоит из нескольких полей, он называется составным. Ключ должен быть уникальным и однозначно определять запись. По значению ключа можно отыскать единственную запись. Ключи служат также для упорядочивания информации в БД.

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

Пусть создана таблица Студент, содержащая следу-рэщие поля: № группы, ФИО, № зачетки, дата рождения, шазвание специальности, название факультета. Такая организация хранения информации будет иметь ряд недостатков:
  • дублирование информации (наименование специальности и факультета повторяются для каждого студента), следовательно, увеличится объем БД;
  • процедура обновления информации в таблице затрудняется из-за необходимости редактирования каждой записи таблицы.

Нормализация таблиц предназначена для устранения этих недостатков. Имеется три нормальные формы отношений.

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

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

Третья нормальная форма. Таблица находится в третьей нормальной форме, если она удовлетворяет требованиям второй нормальной формы, ни одно из ее неключевых полей не зависит функционально от любого другого неключевого поля. Например, в таблице Студент (№ группы, ФИО, № зачетной книжки, Дата рождения, Староста) три поля — № зачетной книжки, № группы, Староста находятся в транзитивной зависимости. № группы зависит от № зачетной книжки, а Староста зависит от № группы. Для устранения транзитивной зависимости необходимо часть полей таблицы Студент перенести в другую таблицу Группа. Таблицы примут следующий вид: Студент (№ группы, ФИО, № зачетной книжки, Дата рождения), Группа (№ группы, Староста).

Над реляционными таблицами возможны следующие операции:
  • Объединение таблиц с одинаковой структурой. Результат— общая таблица: сначала первая, затем вторая (конкатенация).
  • Пересечение таблиц с одинаковой структурой. Результат — выбираются те записи, которые находятся в обеих таблицах.
  • Вычитание таблиц с одинаковой структурой. Результат — выбираются те записи, которых нет в вычитаемом.
  • Выборка (горизонтальное подмножество). Результат — выбираются записи, отвечающие определенным условиям.
  • Проекция (вертикальное подмножество). Результат — отношение, содержащее часть полей из исходных таблиц.
  • Декартово произведение двух таблиц Записи результирующей таблицы получаются путем объединения каждой записи первой таблицы с каждой записью другой таблицы.

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

Существуют следующие типы информационных связей:
  • один-к-одному;
  • один-ко-многим;
  • многие-ко-многим.

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

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

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

Растровая и векторная графика

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

Такой способ представления изображений называется растровым. Единичный элемент мозаики называется пикселом (от PICture ELement – элемент картинки), а всю мозаику называют растром. Практически все современные мониторы и принтеры используют растровый способ создания изображений. Цифровые и обычные фотографии тоже представляют собой растровые изображения. На обычных фотоснимках роль пикселов выполняют окрашенные элементы чувствительного слоя фотобумаги. Пикселы часто называют также точками растра.

Количество отображаемых пикселов на единицу длины называется разрешающей способностью или разрешением устройства. Разрешение обычно измеряется в dpi – (Dots Per Inch – количество точек на дюйм; напомним, что один дюйм равен 25,4 мм). Вертикальное и горизонтальное разрешение могут различаться. Разрешение большинства мониторов – 70-100 dpi. Разрешение бытовых струйных принтеров – порядка 1500 dpi. Разрешение устройства зависит от размеров его пиксела. Одно и то же растровое изображение на устройствах с различным разрешением будет выглядеть по-разному.

Число битов, используемых компьютером для задания цвета одного пиксела, называется цветовым разрешением, или глубиной цвета. Цветовое разрешение определяет, в какое количество цветов (или оттенков серого) можно раскрасить каждый пиксел изображения. Цветовое разрешение 1-бит/пиксел позволяет использовать только два цвета, что соответствует черно-белому изображению, 8 бит/пиксел – 256 цветов (оттенков серого); 24 бит/пиксел – более 16 миллионов цветов – это более чем достаточно для представления всех цветов, различимых человеческим глазом.

Цветовое разрешение 24 бит/пиксел используется при создании так называемых фотореалистичных изображений, то есть компьютерных изображений, неотличимых от фотографии по качеству передачи цвета и формы объектов. Рисунок слева вполне можно считать фотореалистичным изображением.

Второй способ компьютерного представления изображений – векторная графика. Векторное изображение тоже состоит из отдельных элементов, но они имеют различную форму и размеры. Типичные элементы векторной графики — это геометрические линии и фигуры: отрезки, дуги, круги, прямоугольники и так далее. Буквы тоже относятся к элементам векторной графики.

Векторный рисунок

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

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

Заметим, что оба способа основаны на общем принципе дискретного (цифрового) представления информации в компьютере.

Сравним растровый и векторный способы представления изображений.

В качестве первого критерия сравнения выберем очень важную на практике характеристику – экономичность использования компьютерной памяти. Здесь растровая графика совершенно проигрывает векторной. Для формирования растрового изображения нужно задать цвет каждого его пиксела. Например, чтобы сохранить изображение экрана монитора размером 1024 на 768 пикселов с цветовым разрешением 24 бит/пиксел нужно 1024*768*24 бит = 18874368 бит = 2359296 байт = 2304 Кб памяти. Это значение не зависит от содержания изображения, поскольку сохраняется каждый пиксел. Оценим объем памяти, необходимый для представления различных векторных примитивов. Для них нужно хранить геометрическую информацию и цвет. Отрезок обычно задают декартовыми координатами его концов, следовательно для него необходимо отвести четыре числа. Для окружности достаточно трех чисел– радиуса и координат центра; для дуги окружности следует добавить еще два – значения начального и конечного угла. Учитывая, что для высокоточного хранения числа достаточно восьми байтов, и прибавив три байта на представление цвета примитива и один для хранения его типа (надо же как-то отличать дугу от отрезка), получим, что для хранения изображения, состоящего из тысячи отрезков и тысячи дуг (а это очень сложное изображение, для сравнения, на рис. 4 всего несколько десятков примитивов), нужно 1000*(5+3+1)*8 + 1000*(4+3+1)*8 байт = 136000 байт » 133 Кб памяти, то есть во много раз меньше, чем при растровом представлении. Заметим, что объем памяти, необходимый для представления векторных примитивов, не зависит от разрешения устройства. Если же на экране изображен планиметрический чертеж с парой окружностей и отрезков, то при векторном способе требуется всего 2*(3+3+1)*8 + 2*(4+3+1)*8 байт = 240 байт памяти, а при растровом – все равно 2304 Кб.

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

Масштабирование векторного изображения

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

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

Выделение и изменение элемента векторного изображения

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

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

Графические редакторы

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

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

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

В качестве примера широко используемых растровых редакторов для операционных систем семейства Windows можно привести:

Adobe Photoshop,

Microsoft Paint,

Microsoft Photo Editor,

для операционных систем семейства UNIX

– GIMP,

XPaint.


Пример использования различных «фильтров» Adobe Photoshop.

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

Для этих целей широко применяются векторные редакторы:

Corel Draw,

Microsoft Visio,

Adobe Illustrator.

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

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

Примерами распространенных автоматизированных систем машиностроительного проектирования с многофункциональными векторными редакторами могут служить зарубежные программы AutoCAD, Unigraphics, отечественные КОМПАС, Кредо. Для этих систем характерно наличие функции трехмерного, пространственного моделирования с возможностью высококачественного изображения моделируемых объектов.

К векторным графическим системам также относится широко известная программа трехмерного моделирования 3DStudio MAX, позволяющая не только получать изображения моделей с имитацией материала и световых эффектов, но и оживлять (анимировать) их путем задания траекторий движения и способов трансформации объектов. Полученные анимированные изображения могут быть сохранены, например, в формате компьютерного видеоролика *.avi.

Программы, подобные 3D Studio MAX, обычно используются в техническом дизайне и для создания компьютерных мультфильмов.

Форматы графических файлов

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

Редактор

Формат

Corel Draw

*.cdr

Adobe Photoshop

*.psd

Adobe Illustrator

*.ai

MS Visio

*.vsd

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

Универсальные растровые форматы

Универсальные векторные форматы

BMP (*.bmp) – Bit MaP image

EPS (*.eps) Encapsulated PostScript

GIF (*.gif) Graphics Interchange File

Windows Metafile (*.wmf, *.emf)

TIFF (*.tiff, *.tif) Tag Image File Format

DXF (*.dxf) Drawing Exchange Format

JPEG (*.jpeg,*.jpg) Join Photographic Experts Group

SVG (*.svg) Scalable Vector Graphics

PNG (*.png) Portable Network Graphic

HP-GL (*.hpgl, *.hpg) Hewlett-Packard Graphic Language

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

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