Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
23
Добавлен:
01.05.2014
Размер:
526.34 Кб
Скачать

Физическое проектирование БД

Оптимизация клиентских приложений

Минимизация соединений с БД

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

Использование SQL-ориентированных компонентов при построении клиентских приложений

Использование SQL-ориентированных компонентов (например, в Delphi компонент TQuery вместо TTable) позволяет уйти от «навигационного способа» обработки данных, который был характерен для локальных и файл-серверных СУБД, и, как следствие, решает задачу снижения трафика в вычислительной сети.

Физическое проектирование БД

Оптимизация клиентских приложений

Перенос тяжести вычислительной работы на сервер

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

Не надо обращаться к серверу с запросом необоснованно большого объема данных, на которые приходится накладывать фильтры в самом клиентском приложении.

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

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

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

Технологии построения информационных систем – приложений БД

Классификация архитектур построения приложений баз данных

По технологии обработки данных

По технологии обработки данных базы данных подразделяются на централизованные и распределенные.

Централизованная база данных хранится в памяти одной вычислительной системы. Эта вычислительная система может быть мэйнфреймом - тогда доступ к ней организуется с использованием терминалов - или файловым сервером локальной сети ПК.

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

Технологии построения информационных систем – приложений БД

Классификация архитектур построения приложений баз данных

По способу доступа к данным

По способу доступа к данным базы данных разделяются на

1.БД с локальным доступом

2.БД с сетевым доступом.

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

Централизованные базы данных с сетевым доступом могут иметь следующую архитектуру:

1.файл-сервер;

2.клиент-сервер базы данных;

3."тонкий клиент" - сервер приложений - сервер базы данных (трехуровневая архитектура).

Технологии построения информационных систем – приложений БД

Классификация архитектур построения приложений баз данных

Схема работы с БД в локальной сети с выделенным файловым сервером

Архитектура систем БД с сетевым доступом предполагает выделение одной из машин сети в качестве центральной (файловый сервер). На этот компьютер устанавливается операционная система (ОС) для выделенного сервера. На нем же хранится совместно используемая централизованная БД в виде одного или группы файлов. Все другие компьютеры сети выполняют функции рабочих станций Файлы базы данных в соответствии с пользовательскими запросами передаются на рабочие станции, где и производится обработка информации. При большой интенсивности доступа к одним и тем же данным производительность информационной системы падает. Пользователи могут создавать также локальные БД на рабочих станциях.

Технологии построения информационных систем – приложений БД

Классификация архитектур построения приложений баз данных

Схема работы с БД в архитектуре "Клиент-сервер"

В этой архитектуре на выделенном сервере, работающем под управлением серверной операционной системы, устанавливается специальное программное обеспечение (ПО) - сервер БД. СУБД подразделяется на две части: клиентскую и серверную. Основа работы сервера БД - использование языка запросов (SQL). Запрос на языке SQL, передаваемый клиентом (рабочей станцией) серверу БД, порождает поиск и извлечение данных на сервере. Извлеченные данные транспортируются по сети от сервера к клиенту. Тем самым, количество передаваемой по сети информации уменьшается во много раз.

Технологии построения информационных систем – приложений БД

Классификация архитектур построения приложений баз данных

Схема работы с БД в трехуровневой архитектуре

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

Технологии построения информационных систем – приложений БД

Базовая архитектура сервера баз данных

Типичный сервер баз данных на логическом уровне отвечает за выполнение следующих функций:

поддержание логически согласованного набора файлов;

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

восстановление информации после разного рода сбоев;

организацию реально параллельной работы нескольких пользователей.

Технологии построения информационных систем – приложений БД

Базовая архитектура сервера баз данных

На физическом уровне сервером БД реализуются следующие функции:

Непосредственное управление данными во внешней памяти

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

Управление буферами оперативной памяти

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

Технологии построения информационных систем – приложений БД

Базовая архитектура сервера баз данных

На физическом уровне сервером БД реализуются следующие функции (продолжение):

Управление транзакциями

Понятие транзакции необходимо для поддержания логической целостности БД.

Но понятие транзакции гораздо более важно в многопользовательских СУБД. То свойство, что каждая транзакция начинается при целостном состоянии БД и

оставляет это состояние целостным после своего завершения, делает очень удобным использование понятия транзакции как единицы активности пользователя по отношению к БД.

С управлением транзакциями в многопользовательской СУБД связаны важные понятия сериализации транзакций и сериального плана выполнения смеси транзакций.

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

Существует несколько базовых алгоритмов сериализации транзакций. В централизованных СУБД наиболее распространены алгоритмы, основанные на синхронизационных захватах объектов БД.

Соседние файлы в папке Презентации по технологиям БД