Информационные модели

1  Структура и система[2]


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

 

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

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

2  Графы[2]

Граф -- это информация о составе и структуре системы, представленная в графической форме.

Элементы системы (изображаются в виде кружков или овалов) называются вершинами (узлами) графа, а связи между этими элементами -- отношениями. Отношение изображается ребром (дугой) графа -- линией, соединяющей две вершины. Две связанные вершины называются смежными.

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

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

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

В дереве связь между верхними и нижними элементами -- <<один ко многим>>. То есть каждая вершина, кроме корня, имеет одну входящую дугу, все вершины, кроме листьев,"- одну или более выходящих дуг.

Системы, в которых существуют отношения типа <<многие ко многим>>, образуют сетевые структуры.

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

Система, представимая в виде графа, всегда может быть представлена и в виде таблицы.

3  Инфоpмационные системы[1]

Информационные системы (ИС) можно условно разделить на фактографические и документальные.

Документальные ИС работают с совокупностью неструктурированных (или, по крайней мере, не имеющих одинаковой, наперед заданной структуры) документов, снабженной тем или иным аппаратом поиска. Цель системы -- выдать на запрос пользователя все документы, удовлетворяющие некоторому критерию.

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

3.1  Базы данных

Центральной частью операционной системы, объектом ее обработки является база данных -- поименованная совокупность тем или иным способом структурированных данных, относящихся к одной предметной области. [3]

Структурирование -- это введение соглашений о способах представления данных.[3]

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

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

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

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

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

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

3.2  Реляционные БД

Базы данных, состоящие из одной или нескольких взаимосвязанных двумерных таблиц (отношений), называются реляционными.

3.2.1  Таблица в РБД

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

Реляционная модель данных1 имеет следующие особенности[3]:

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

3.2.2  Ключи таблицы

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

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

4  Технология работы в СУБД[3]

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

4.1  Проектирование БД

4.1.1  Модели БД[4]

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

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

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

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

При разработке моделей требуется обеспечить:

  • независимость данных от ПО;
  • независимость физического и внешнего представления данных;
  • возможность расширения БД;
  • надежность (целостность) данных.

4.1.2  Проектирование таблиц

При проектировании таблиц БД2 следует:

  1. определить, что является первичным ключем основной таблицы;
  2. привести атрибуты объекта к такой форме, чтобы они были далее неделимы;
  3. определить, какая информация связана непосредственно с первичным ключем -- соответствующие поля будут входить в основную таблицу;
  4. выделить поля основной таблицы, от значений которых однозначно зависит какая-либо информация, включаемая в базу данных; эти поля образуют первичные ключи вспомогательных таблиц -- классификаторов;
  5. повторить вышеуказанные действия для каждого классификатора;
  6. проверить, чтобы в таблицах не было одноименных полей, не являющихся первичным ключем ни одной из них;
  7. если нужно, выделить повторяющиеся группы3 и сформировать соответствующие таблицы.

*  Замечание. Разбиение на несколько таблиц необходимо, чтобы избежать следующих проблем:

  • Избыточность. Не должно быть бесполезного повторения одинаковых данных.
  • Потенциальная противоречивость. При обновлении БД данные должны изменяться только в одном месте вместо просмотра всей таблицы.
  • Аномалии включения и удаления. При включении или удалении объекта не должно возникать неопределенностей.

4.1.3  Структурные связи [3]

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

  • один к одному -- в каждый момент времени одному экземпляру объекта А соответствует не более одного экземпляра объекта Б и наоборот;
  • один ко многим -- одному экземпляру объекта А соответствует любое (0,1, 2...) число экземпляров объекта Б, но каждый экземпляр объекта Б связан не более чем с одним экземпляром объекта А;
  • многие ко многим -- одному экземпляру объекта А соответствует любое (0,1, 2...) число экземпляров объекта Б и наоборот.

4.2  Технологические этапы

4.2.1  Описание структуры БД

Формирование новой БД начинается с создания структуры таблиц: задания перечня полей, их типов, размеров, форматов и других свойств, а также указания связей между таблицами.

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

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

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

  • текст (фиксированной или произвольной длины)
  • число (иногда, отдельно целые и вещественные числа)
  • дата
  • время (особые случаи числового типа)
  • логическое значение
  • <<мультимедиа-объект>> (фото, звук, фильм и т. п.)

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

4.2.2  Ввод и редактирование данных

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

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

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

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

4.2.3  Обработка данных

Обработка информации в БД может включать:

  • сортировку записей;
  • выборку записей по признаку;
  • изменение данных.

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

Выборка записей по признаку может осуществляться с помощью фильтра или запроса.

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

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

В различных СУБД реализация фильтров и запросов может существенно различаться.

4.2.4  Вывод информации

Для вывода данных СУБД располагают средствами построения отчетов. Они предоставляют пользователю возможности:

  • включать в отчет только выборочную информацию;
  • добавлять дополнительную информацию (например, полученную в результате вычислений);
  • распределять информацию в зависимости от размеров и расположения страницы.

Литература

[1]
Ю. А. Шафрин. Основы компьютерной технологии. М.: АБФ, 1998.
[2]
И. Г. Семакин. Системы, структуры, модели. Главы из книги для учащихся//Информатика и образование. 1998. 1 с. 51-56, 2 с. 62-69.
[3]
О. П. Овчарова и др. Основы баз данных: пособие для учителя. Ч. 1. Сургут: ДКШ, 2000.
[4]
В. В. Кириллов. Основы проектирования реляционных баз данных. Санкт-Петербургский Государственный институт точной механики и оптики (технический университет). (http://www.citforum.ru/database/dbguide/)

Примечания:

1 англ. relation -- отношение. Теория реляционных баз данных (реляционная алгебра) -- математическая дисциплина, основы которой разработал в 70-х гг доктор Э. Кодд (США)

2 Этапы проектирования даны по [1] с дополнениями из [3]

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


File translated from TEX by TTH, version 2.25.
On 14 Jun 2002, 23:15.


[Титульная страница][Макинтош][Информатика и ИТ]
Hosted by uCoz