Настольные СУБД, их достоинства и недостатки

Настольные СУБД используют в модели вычислений с сетью и файловым сервером (архитектура «файл-сервер»).

Достоинства настольных СУБД:

• они являются простыми для освоения и использования;

• обладают дружественным пользовательским интерфейсом;

• ориентированы на класс ПК, на самую широкую категорию пользователей – непрофессионалов;

• обеспечивают хорошее быстродействие при работе с небольшими БД.

Недостатки настольных СУБД:

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

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

• очень малая эффективность работы в компьютерной сети.

Известно более десятка настольных СУБД. Наиболее популярными, исходя из числа проданных копий признаются DBASE, Visual DBASE, Paradox, Microsoft FoxPro, Visual FoxPro, Access.

 

68. Клиент/серверные системы: клиенты, серверы, клиентские приложения, серверы баз данных.

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

69. Функции клиентского приложения и сервера БД при обработке запросов. Преимущества клиент/серверной обработки.

В архитектуре клиент/сервер функции клиентского приложения и серверной СУБД разделены. Функции клиентского приложения разбиваются на следующие группы:

• ввод-вывод данных (презентационная логика) – это часть кода клиентского приложения, которая определяет, что пользователь видит на экране, когда работает с приложением;

• бизнес-логика – это часть кода клиентского приложения, которая определяет алгоритм решения конкретных задач приложения;

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

Сервер баз данных в общем случае осуществляет целый комплекс действий по управлению данными. Основными среди них являются следующие:

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

• хранение и резервное копирование данных;

• поддержка ссылочной целостности данных согласно определенным в БД правилам;

• обеспечение авторизованного доступа к данным на основе проверки прав и привилегий пользователя;

• протоколирование операций и ведение журнала транзакций.

Преимущества клиент/серверной обработки:

• уменьшается сетевой трафик, так как через сеть передаются только результаты запросов.

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

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

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

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