Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по БД на транспорте ТИМ.doc
Скачиваний:
19
Добавлен:
25.12.2018
Размер:
2.63 Mб
Скачать
    1. Концепции распределенных субд

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

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

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

      1. Трехслойная архитектура клиент-сервер

Проблема взаимодействия пользователя с несколькими базами одновременно решается (при проектировании информационной системы) введением в систему третьего слоя – правил бизнеса. Вынесение правил бизнеса в отдельный слой позволяет отделить от конкретных реализаций логическую структуру данных – правила допустимости операций в системе, как с точки зрения любой его компоненты, так и с точки зрения системы в целом. Логический контроль понимается в самом широком смысле: проверка ссылочной целостности - отслеживание действий с подчиненными данными при изменении или удалении записи в основных данных (например, при удалении участка улично-дорожной сети, должны быть удалены все объекты, расположенные на нем); синхронизированность географических и семантических данных (например, при удалении объекта на карте должны быть удалены и его атрибутивные данные); контроль семантической корректности вводимых данных.

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

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

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

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

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

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

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

Трехслойная архитектура предлагает в качестве основы построения системы модель клиент–сервер.

Клиентская часть обеспечивает средства взаимодействия информационной системы и ее пользователей.

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