Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Otvety_na_bilety_po_vase_1.doc
Скачиваний:
13
Добавлен:
18.08.2019
Размер:
4.72 Mб
Скачать

Технология клиент-сервер

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

 Примеры клиент-серверных приложений:

1. Офисная программа Microsoft Outlook. Она может служить основой для создания клиентских приложений систем управления документами.

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

3. Офисная программа Excel 2000. Она использует клиент-серверный подход, обеспечивая быстрый доступ к большим серверным базам данных.

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

4. SQL Server 2005.

  Базовая схема взаимодействия клиента и сервера в СУБД-ориентированных приложениях имеет вид:

  • Клиент запрашивает у сервера данные, тот ему их возвращает;

  • Клиент велит серверу изменить данные, тот выполняет операцию.

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

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

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

Преимущества клиент-серверной архитектуры перед файл-серверной

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

- увеличение производительности за счет того, что сам сервер может эффективно кэшировать данные (в отличие от клиента, который никогда не может быть уверен в том, что его данные "первой свежести".

- перенос части функциональности на сервер с уменьшением трафика и увеличением производительности;

- масштабируемость - при возрастании нагрузки достаточно заменить лишь сервер, а не все станции и сетевые платы;

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

Недостатки Клиент-серверной архитектуры

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

 

28. Программные средства сетевого доступа к данным (sql-серверы и т.П.)

(Арсеньев, Яковлев, Интеграция распределенных баз данных, с.217-220)

SQL-сервер

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

В архитектуре клиент-сервер нет прямого доступа приложений в серверную БД. Функции прямого обращения к БД осуществляет специальная управляющая программа, которая и получила название SQL-сервер. SQL-сервер обеспечивает:

- доступ в БД в режиме транзакций;

- централизованная безопасность данных (резервное копирование);

- управление защитой данных (назначение прав доступа);

- реализация бизнес-правил:

К числу наиболее применимых SQL-серверов относятся: InterBase, MS SQL Server, Oracle, Informix, Sybase, DB2.

Общие сведения об InterBase

SQL-сервер InterBase является промышленной СУБД и был разработан фирмой DEC в начале 80-х годов. Сегодня масштаб применения InterBase произволен – от системы уровня рабочей группы (под управлением NovellNetware или Windows NT на базе IBM PC) до систем уровня больших предприятий (на базе серверов IBM, Hewlet Packard, Sun).

Для создания ссылочной и смысловой целостности в БД можно определять:

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

- ограничения на значения отдельных столбцов заданием ограничений на значения домена или столбца;

- бизнес-правила при помощи триггеров, обеспечивающих автоматическое выполнение заданных процедур сервером до или после событий модификации БД;

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]