Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник Швецов.pdf
Скачиваний:
135
Добавлен:
27.03.2015
Размер:
3.89 Mб
Скачать

Время решения задачи 3 увеличится в R3/T3 d * N / l3 * N3 . Т.к. для данного примера по смыслу задачи N3 << N, то R3 >>T3. Время решения задачи 3 может увеличиться на несколько порядков, что совершенно недопустимо.

Рассмотрим другой вариант построения единой информационной базы. Объединим записи задач 1 и 2, запись задачи 3 оставим отдель-

но. Получим 2

типа записей:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ko

 

 

FIO

D

 

O

 

 

G

 

H

S

M

 

 

 

 

 

 

 

 

 

 

 

FIO

O

 

Kдв

 

SN

 

 

 

 

 

В этом случае дублирование остается (дублируются поля FIO, O). Но, так как N3 << N, то общий объем дублирования незначителен. Время решения задачи 1 и 2 в этом случае незначительно возрастет по сравнению с вариантом отдельных файловых систем, время решения задачи 3 такое же, как и в начальном варианте отдельного файла. Такое объединение позволяет значительно уменьшить недостатки 1–3 и в то же время существенно увеличивает время решения всех задач. Все 3 задачи можно решать, используя общую информационную базу из двух типов записей. Отметим, что два приведенных типа записей связаны друг с другом по полю FIO (находятся в некотором отношении).

Таким образом, в этом случае, для решения вышеуказанных задач используется некоторый новый вид данных и появляется новое понятие «база данных».

База данных – совокупность экземпляров различных типов записей и отношений между записями и элементами.

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

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

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

сэтой задачей.

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

18

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

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

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

Прикладная программа 1

Прикладная программа 2 База

СУБД данных

(БД)

Прикладная программа N

Рис.1. Обеспечение независимости прикладных программ и базы данных

Определим еще одно понятие.

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

Перечислим ряд наиболее распространенных СУБД для персональных ЭВМ.

19

Наиболее распространенными СУБД за последние годы были dBase-совместимые программные системы, разработанные разными фирмами. Первой широко распространенной системой такого рода была система dBase III – PLUS (фирма Achton-Tate). Развитый язык программирования, удобный интерфейс, доступный для массового пользователя способствовали широкому распространению системы. В то же время работа системы в режиме интерпретации обуславливала низкую производительность на стадии выполнения. Это привело к появлению новых систем-компиляторов, близких к системе dBase III – PLUS: Clipper (фирма Nantucket Inc.), FoxPro (фирма Fox Software), FoxBase+ (фирма Fox Software), Visual FoxPro (фирма Microsoft). Сис-

тема управления базами данных Access входит в пакет Microsoft Office 97 Professional. Одно время достаточно широко использовалась СУБД

PARADOX (фирма Borland International). Фирма IBM представляет, в

частности, СУБД DB2, которая в последние годы получает все большее распространение. Среди мощных СУБД, предназначенных для решения задач с использованием сети необходимо отметить широко распространенные системы Oracle (Oracle Corp.) MS SQL – сервер

(фирма Microsoft), SYbase (фирма Sybase Inc.). Кроме вышеуказанных зарубежных систем отметим и отечественную разработку – СУБД НИКА, преемницу широко распространенной в Советском Союзе СУБД ИНЕС для ЕС ЭВМ.

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

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

В большинстве современных СУБД база данных представляется в виде совокупности таблиц. Рассматриваемая функция позволяет описать и создать в памяти структуру таблицы, провести начальную загрузку данных в таблицы. Примеры таких действий для СУБД MS Access и Sybase SQL Anywhere приведены на рисунках 2, 3.

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

20

Рис. 2. Формирование структуры базы данных в СУБД Access

Рис.3. Формирование структуры базы данных в СУБД Sybase

21

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

В MS Access реализация данной функции сводится к созданию и выполнению запросов и форм ввода (рис. 4).

Рис.4. Формирование запроса на выборку в СУБД Access

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

Для Sybase SQL Anywhere средством для создания и выполнения запросов является программа Sybase ISQL, а средством создания GUI – Sybase Power Designer. Пример работы ISQL приведен на рис. 5. Ко-

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

22