Помощь в написании студенческих работ
Антистрессовый сервис

Архитектура базы данных

РефератПомощь в написанииУзнать стоимостьмоей работы

Приложение-клиент формирует запрос к серверу, на котором расположена БД, на структурном языке запросов SQL. Удаленный сервер принимает запрос и переадресует его SQL-серверу БД. SQL-сервер — это специальная программа, управляющая удаленной базой данных. SQL-сервер обеспечивает интерпретацию запроса, его выполнение в базе данных. Формирование результата выполнения запроса и выдачу его… Читать ещё >

Архитектура базы данных (реферат, курсовая, диплом, контрольная)

Разработанная информационная система реализована на основе клиент-серверной архитектуры.

Клиент-серверная информационная система состоит в простейшем случае из трех основных компонентов:

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

Приложение-клиент формирует запрос к серверу, на котором расположена БД, на структурном языке запросов SQL. Удаленный сервер принимает запрос и переадресует его SQL-серверу БД. SQL-сервер — это специальная программа, управляющая удаленной базой данных. SQL-сервер обеспечивает интерпретацию запроса, его выполнение в базе данных. Формирование результата выполнения запроса и выдачу его приложению-клиенту. При этом ресурсы клиентского компьютера не участвуют в физическом выполнении запроса; клиентский компьютер лишь отсылает запрос к серверной БД и получает результат, после чего интерпретирует его необходимым образом и представляет пользователю. Так как клиентскому приложению посылается результат выполнения запроса, по сети «путешествуют» только те данные, которые необходимы клиенту. В итоге снижается нагрузка на сеть. Поскольку выполнение запроса происходит там же, где хранятся данные (на сервере), нет необходимости в пересылке больших пакетов данных. Кроме того, SQL-сервер, если это возможно, оптимизирует полученный запрос таким образом, чтобы он был выполнен в минимальное время с наименьшими накладными расходами.

Все это повышает быстродействие системы и снижает время ожидания результата запроса.

При выполнении запросов сервером существенно повышается степень безопасности данных, поскольку правила целостности данных определяются в базе данных на сервере и являются едиными для всех приложений, использующих эту БД. Таким образом, исключается возможность определения противоречивых правил поддержания целостности. Мощный аппарат транзакций, поддерживаемый SQL-серверами, позволяет исключить одновременное изменение одних и тех же данных различными пользователями и предоставляет возможность откатов к первоначальным значениям при внесении в БД изменений, закончившихся аварийно. Таким образом, функциями приложения-клиента являются:

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

SQL-сервер — это программа, расположенная на компьютере сетевого сервера. SQL-сервер должен быть загружен на момент принятия запроса от клиента. Функциями сервера БД являются:

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

Использование архитектуры «клиент-сервер» :

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

Описание созданных запросов.

Язык SQL предназначен в первую очередь для выполнения запросов.

SQL Server 2005 позволяет в одном запросе обращаться сразу к множеству разнообразных источников данных, возможно расположенных на разных серверах сети За счет использования технологии OLE DB пользователи могут получить доступ не только к реляционным источникам данных, как это было бы во время применения ODBC, но и к нереляционным, таким как текстовые файлы и электронные таблицы. Для выборки данных в Transact-SQL существует команда SELECT, которая позволяет как делать простую выборку всех данных из одной таблицы текущей базы данных, так и выполнять сложные запросы одновременно к множеству таблиц различных баз данных, расположенных на нескольких серверах сети Результатом SQLзапроса на выборку всегда является таблица. Если программа посылает запрос СУБД с помощью программного SQL, то СУБД возвращает таблицу результатов запроса программе. То, что SQL-запрос всегда возвращает таблицу, очень важно. Это означает, что результаты запроса можно записать обратно в базу данных в виде таблице. Это означает также, что результаты двух запросов, имеющих похожую структуру, можно объединить в одну таблицу. И наконец, это говорит о том, что результаты запроса сами могут стать предметом дальнейших запросов.

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

INSERT INTO #TempTable (coupon_num, date, status, gas_name, cust_name).

SELECT DISTINCT coupons. id_coupon, coupons. date, coupons. status,.

coupons.gas_name,.

(SELECT cust_name FROM customers WHERE ID1C = (SELECT ClientID1C FROM [dbo]. 1CBill])).

FROM [dbo]. Coupon] coupon.

Показать весь текст
Заполнить форму текущей работой