Режимы и технологии работы с базами данных

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

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

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

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

 

Рис. 18 Технология «файл-сервер».

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

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

 

Рис. 19 Двухзвенная архитектура клиент-сервер.

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

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

 

Рис. 20 Трехзвенная архитектура клиент-сервер.

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

Запросы служат для извлечения данных из таблиц и предоставления их пользователю в удобном виде. С помощью запросов можно выполнять преобразование данных по заданному алгоритму, создавать новые таблицы, выполнять автоматическое наполнение таблиц данными, импортированными из других источников, выполнять простейшие вычисления в таблицах и многое другое. На рис. 22 и 23 приведены примеры получения новых таблиц из исходной (рис.21) по критериям сортировки соответственно по наименованию оборудования и стоимости оборудования.

 

Рис 21 Исходная таблица заказа оборудования

 

Рис 22 Таблица заказа оборудования, отсортированная по названию оборудования по алфавиту

 

Рис 23 Таблица заказа оборудования, отсортированная по стоимости оборудования