
Лекция 5. Базы данных и системы управления базами данных
Понятие информационной системы
Базы данных (БД) – важнейшая составная часть информационных систем. Здесь ограничимся лишь кратчайшими общими сведениями об информационных системах, сосредоточив внимание на базах данных как таковых.
Под информационными понимают системы, предназначенные для хранения информации в специальным образом организованной форме и обеспечивающие ее ввод и различные манипуляции с ней, включая поиск по некоторым признакам, подготовку отчетов и т.д.
Сама идея информационных систем и некоторые принципы их организации возникли задолго до появления ЭВМ. Библиотеки, архивы, адресные бюро, справочники, словари – все это информационные системы.
Любая информационная система должна выполнять три основные функции:
-
Ввод и редактирование данных: система должна предоставлять возможность накапливания и упорядочивания данных. Необходимо обеспечить просмотр этих данных, внесение в них изменений и дополнений с тем, чтобы поддерживать актуальность информации.
-
Запросы по данным: в системе должна существовать возможность находить и просматривать отдельные части накопленной информации.
-
Составление отчетов: часто возникает необходимость обобщать и анализировать большую группу данных (или даже все данные) информационной системы, представляя ее в виде документа.
Обслуживание информационных систем, реализованных в письменном (бумажном) виде, сопряжено со многими трудностями: чем больше информационная система, тем больше бумаги (карточек) и места требуется для их хранения (в этом можно убедиться на примере библиотеки); много времени тратится на поиск нужной информации. Сложности возникают при обновлении, анализе и обработке данных.
Виды структур данных
Работа с большим количеством данных автоматизируется проще, когда данные упорядочены. Совокупность упорядоченных взаимосвязанных данных называется информационной структурой, или структурой данных.
Для упорядочивания данных применяют следующие структуры:
-
Линейная структура (список) – упорядоченная структура, в которой адрес данного однозначно определяется его номером (список учебной группы; дома, стоящие на одной улице).
В списках новый элемент начинается с новой строки. Если элементы располагаются в строчку, нужно внести разделительный знак между элементами. Поиск осуществляется по разделителям (чтобы найти, например, десятый элемент, надо отсчитать девять разделителей).
Если элементы списка одной длины, структура называется вектором данных, при этом разделители не требуются. При длине одного элемента – d, зная номер элемента – n, его начало определяется соотношением d(n-1).
-
Табличная структура (реляционная) – упорядоченная структура, в которой адрес данного однозначно определяется двумя числами – номером строки и номером столбца, на пересечении которых находится ячейка с искомым элементом.
Свойства объектов находятся в столбцах таблицы и их называют атрибутами объектов. Каждая строка таблицы – есть совокупность атрибутов объекта. Такую строку называют записью, а столбец – полем записи.
Если элементы располагаются в строчку, нужно внести два разделительных знака – разделительный знак между элементами строки и разделительный знак между строками. Поиск, аналогично линейной структуре, осуществляется по разделителям.
Если элементы таблицы одной длины, структура называется матрицей данных, при этом разделители в ней не требуются. При длине одного элемента – d, зная номер строки – m и номер столбца n, а также количество столбцов N, найдем адрес его начала: d[N(m-1)+(n-1)].
Таблица может быть и трехмерная, тогда три числа характеризуют положение элемента и требуются три типа разделителей, а может быть и n-мерная.
-
Иерархическая структура – нерегулярные данные, которые трудно представляются в виде списка или таблицы, могут быть представлены в иерархической структуре, в которой адрес каждого элемента определяется путем (маршрутом доступа), идущим от вершины структуры к данному элементу (почтовые адреса).
Линейная и табличная структуры более просты, чем иерархическая структура, но если в линейной структуре появляется новый элемент, то упорядоченность сбивается. Например, если в списке студентов появляется новый человек, то расположенный по алфавиту список нарушается. В иерархической структуре введение нового элемента не нарушает структуры дерева, недостатком ее является трудоемкость записи адреса и сложность упорядочения.
Для иерархических структур характерна подчиненность объектов нижнего уровня объектам верхнего уровня. Важно отметить, что в дереве, между верхними и нижними объектами, задано отношение «один ко многим» (т.е. одной группе соответствует много альбомов, одному альбому соответствует много песен).
-
Сетевая структура – упорядоченная структура, элементы которой могут быть связаны между собой произвольным образом. С теоретической точки зрения, каждый элемент может быть связан с любым другим элементом базы. В этом случае есть два уровня взаимосвязанных объектов, но отношение между ними «многие ко многим».
Построение структуры данных происходит в следующем порядке:
-
определяются объекты описания;
-
определяются структуры этих объектов;
-
выбирается тип структуры, отображающий отношения между объектами (линейная, табличная, иерархическая, сети);
-
строится конкретная информационная структура.