Распределение системами управления базами данных - Курсовая работа

бесплатно 0
4.5 92
Характеристики распределенной системы управления базой данных. Уровни представления информации в распределенной базе. Сравнительные характеристики стратегий хранения информации: централизованной, расчленения (фрагментации), дублирования, смешанной.

Скачать работу Скачать уникальную работу

Чтобы скачать работу, Вы должны пройти проверку:


Аннотация к работе
Децентрализованный подход, по сути, отражает организационную структуру многих компаний, логически состоящих из отдельных подразделений, отделов, проектных групп и т.п., которые физически распределены по разным офисам, отделениям, предприятиям или филиалам, причем каждая отдельная производственная единица имеет дело с собственным набором обрабатываемых данных. Появление вычислительных систем с базами данных привело к смене прежних способов обработки данных, в которых для каждого приложения определялись и поддерживались собственные наборы данных, новыми, в которых все данные определялись и поддерживались централизованно. В основном мы рассматривали централизованные системы баз данных, т.е. системы, в которых единственная логическая база данных размещалась в пределах одного узла и находилась под управлением одной СУБД (данные из источников передавались в центральный вычислительный центр с супер ЭВМ и там обрабатывались). Из этого вытекает следующее определение распределенной СУБД: Распределенная СУБД - программный комплекс, предназначенный для управления распределенными базами данных и обеспечивающий прозрачный доступ пользователей к распределенной информации. Любой узел способен независимо обрабатывать запросы пользователей, требующие доступа к локально сохраняемым данным (т.е. каждый узел обладает определенной степенью автономности), а также способен обрабатывать данные, сохраняемые на других компьютерах сети.Работа по такому варианту имеет следующие сложности: синхронизация данных различных копий в конце работы БД; высокий трафик (потоки данных между сервером и клиентами, поскольку передается в любом случае содержимое всей БД). Таблицы остаются на сервере (back-end), а остальные объекты (запросы, отчеты) передаются клиентам (front-end). В системе клиент-сервер возможно выделить следующие составляющие: сервер, клиент, интерфейс между клиентом и сервером, администратор. Следует отметить, что результаты запросов клиента помещаются в рабочую область памяти сервера, которая в ряде СУБД (например, Oracle) называют "табличная область". Клиент хранит в компьютере свои приложения, с помощью которых осуществляется запрос данных на сервере.Крупные организации, как правило, имеют множество отделений, которые могут находиться в разных концах страны и даже за ее пределами. Например, компания DREAMHOME имеет многочисленные отделения в различных городах Великобритании. В каждом отделении компании DREAMHOME может поддерживаться база данных, содержащая сведения о его персонале, сдаваемых в аренду объектах недвижимости, которыми занимаются сотрудники данного отделения, а также о клиентах, которые владеют или желают получить в аренду эти объекты.Однако отказ одного из узлов распределенной СУБД или линии связи между узлами приводит к тому, что становятся недоступными лишь некоторые узлы, тогда как вся система в целом сохраняет свою работоспособность.Если организована репликация данных, в результате чего данные и их копии будут размещены на нескольких узлах, отказ отдельного узла или линии связи между узлами не приведет к прекращению доступа к данным в системе.Если данные размещены на самом нагруженном узле, который унаследовал от систем-предшественников высокий уровень распараллеливания обработки, то развертывание распределенной СУБД может способствовать повышению скорости доступа к базе данных (по сравнению с доступом к удаленной централизованной СУБД).В 1960-е годы мощность вычислительных средств возрастала пропорционально квадрату стоимости ее оборудования, поэтому система, стоимость которой была втрое выше стоимости данной, превосходила ее по мощности в девять раз. Однако в настоящее время считается общепринятым положение, согласно которому намного дешевле собрать из небольших компьютеров систему, мощность которой будет эквивалентна мощности одного большого компьютера.Добавление в сеть нового узла не оказывает влияния на функционирование уже существующих.Распределенные СУБД, способные скрыть от конечных пользователей распределенную природу используемых ими данных и обеспечить необходимый уровень производительности, надежности и доступности, безусловно, являются более сложными программными комплексами, чем централизованные СУБД. Тот факт, что данные могут подвергаться копированию, также создает дополнительную предпосылку усложнения программного обеспечения распределенной СУБД.Если репликация данных не поддерживается на требуемом уровне, система будет иметь более низкий уровень доступности данных, надежности и производительности, чем централизованные системы, а все изложенные выше преимущества превратятся в недостатки. Увеличение сложности означает и увеличение затрат на приобретение и сопровождение распределенной СУБД (по сравнению с обычными централизованными СУБД). К тому же развертывание распределенной СУБД требует дополнительного оборудования, необходимого для установки сетевых соединений между узлами.Хотя вполне очевидно, что функционирование распределенных СУБД зависит от эффективности используемых каналов св

План
Содержание

Введение

1. Распределение базы данных

1.1 Основные понятие базы данных

1.2 Система клиент сервер

1.3 Преимущества и недостатки СУБД

2. Отражение структуры организации

2.1 Повышение доступности данных

2.2 Повышение надежности

2.3 Повышение производительности

3. Экономические выгоды

3.1 Модульность системы

3.2 Повышение сложности

3.3 Увеличение сложности

4. Усложнение контроля за условность данных

4.1 Отсутствие стандартов

4.2 Недостатки опыта

Заключение

Список использованной литературы

Введение
Основной предпосылкой разработки систем, использующих базы данных, является стремление объединить все обрабатываемые в организации данные в единое целое и обеспечить к ним контролируемый доступ. Хотя интеграция и предоставление контролируемого доступа могут способствовать централизации, последняя не является самоцелью. На практике создание компьютерных сетей приводит к децентрализации обработки данных. Децентрализованный подход, по сути, отражает организационную структуру многих компаний, логически состоящих из отдельных подразделений, отделов, проектных групп и т.п., которые физически распределены по разным офисам, отделениям, предприятиям или филиалам, причем каждая отдельная производственная единица имеет дело с собственным набором обрабатываемых данных. Разработка распределенных баз данных, отражающих организационные структуры предприятий, позволяет сделать общедоступными данные, поддерживаемые каждым из существующих подразделений, обеспечив при этом их хранение именно в тех местах, где они чаще всего используются. Подобный подход расширяет возможности совместного использования информации, одновременно повышая эффективность доступа к ней. Цель: Исследование возможностей распределенных СУБД. Распределенные системы призваны решить проблему информационных островов. Если на предприятии имеется несколько баз данных, их иногда рассматривают как некие разрозненные территории, представляющие собой отдельные и труднодоступные для многих места, подобные удаленным друг от друга островам. Данное положение может являться следствием географической разобщенности, несовместимости используемой компьютерной архитектуры, несовместимости используемых протоколов связи и т.д. Подобное положение дел способна изменить интеграция отдельных баз данных в одно логическое целое.

1. Распределенные базы данных

Появление вычислительных систем с базами данных привело к смене прежних способов обработки данных, в которых для каждого приложения определялись и поддерживались собственные наборы данных, новыми, в которых все данные определялись и поддерживались централизованно. А в последнее время происходит быстрое развитие технологий сетевой связи и обмена данными, вызванное созданием Шете1, появлением мобильных и беспроводных вычислительных средств, а также "интеллектуальных" устройств. Теперь под влиянием этих двух противоположных тенденций технология распределенных баз данных способствует обратному переходу от централизованной обработки данных к децентрализованной. Создание технологии систем управления распределенными базами данных является одним из самых больших достижений в области баз данных.

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

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

1.1 Основные понятия

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

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

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

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

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

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

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

• фрагменты и их копии распределяются по разным узлам;

• узлы связаны между собой сетевыми соединениями;

• доступ к данным на каждом узле происходит под управлением СУБД;

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

• СУБД каждого узла поддерживает хотя бы одно глобальное приложение;

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

В общем случае режимы использования БД имеют вид (рис. 2): Рассмотри основные понятия, применяемые в системах управления распределенными базами данных.

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

Атрибут - характеристика элемента данных в объекте.

Вызов процедуры - передача управления подпрограмме или процедуре с последующим возвратом к основной программе по окончании выполнения подпрограммы или процедуры.

Вызов удаленной процедуры (REMOTEPROCEDURECALL) - вызов процедуры с другого компьютера.

Запрос - процесс обращения пользователя к БД с целью ввода, получения или изменения информации в БД.

Инкапсуляция - объединение данных и программы (кода) в "капсуле", модуле.

Класс - объединяющая концепция набора объектов, имеющих общие характеристики (атрибуты).

Компонент - аналог класса в приложении Delphi.

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

Логическая структура БД - определение БД на физически независимом уровне; ближе всего соответствует концептуальной модели БД.

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

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

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

Метод - набор подпрограмм, оперирующих с данными.

Мост - устройство для соединения двух полностью идентичных подсетей в общую сеть.

Наследование - передача определенных свойств от класса к его производному.

Объект - комбинация элементов данных, характеризующихся атрибутами, и методов их обработки, упакованных вместе в одном модуле.

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

Полиморфизм - возможность переопределения процедуры в производном классе.

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

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

Свойство - аналог атрибута в приложении Delphi.

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

Событие - сигнал запуска метода.

Среда (COMPUTERAIDEDSOFTWAREENGINEERING - CASE) - среда создания программного обеспечения, ориентированная на разработку программы от планирования и моделирования до кодирования и документирования.

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

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

Удаленный запрос - запрос, который выполняется с использованием модемной связи.

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

Фрагментация (расчленение) - процесс разбиения целостного объекта глобального типа на несколько частей (фрагментов).

Фрагмент хранимый - физическая реализация логического фрагмента.

Шлюз - устройство для соединения разнотипных сетей, работающих по разным протоколам.

Возможность реализации удаленной транзакции - обработка одной транзакции, состоящей из множества SQL-запросов, на одном удаленном узле.

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

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

Дополнительными специфическими требованиями являются: • язык описания данных (ЯОД) в рамках схемы должен быть один для всех локальных БД;

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

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

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

• необходим сбор и обработка информации об эффективности функционирования РБД.

В дальнейшем К. Дейт сформулировал 12 правил для РБД.

I. Локальная автономность.

2. Отсутствие опоры на центральный узел.

3.Непрерывное функционирование (развитие) РБД.

4.Независимость РБД от расположения локальных БД.

5.Независимость от фрагментации данных.

6.Независимость от репликации (дублирования) данных.

7. Обработка распределенных запросов.

8. Обработка распределенных транзакций.

9. Независимость от типа оборудования.

10. Независимость от операционной системы.

II. Независимость от сетевой архитектуры.

12. Независимость от типа СУБД.

Схема распределенной БД может быть представлена в виде, показанном на рис. З.

Рис. 3. Схема распределенной БД

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

Рис. 4. Уровни представления данных в распределенной БД

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

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

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

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

Сеть в распределенной БД образуют сетевые операционные системы (например, Windows NT, NOVELLNETWARE). В качестве СУБД, изначально предназначавшихся для использования в сети, следует назвать BTRIEVE, Oracle, INTERBASE, Sybase, Informix.

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

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

Естественно, что для работы в распределенной БД необходимы администраторы распределенных БД и локальных БД, рабочими инструментами которых являются перечисленные словари.

Схема работы распределенной БД показана на рис. 5.

Рис. 5. Схема работы распределенной базы данных

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

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

Сравнительные характеристики стратегий хранения приведены в табл.

Таблица 1

Название Суть Стратегии Достоинство Недостатки

Централизация (в том числе технология клиент- сервер) Единственная копия в одном узле Простота структуры Скорость обработки ограничена одним узлом Ограниченный доступ Малая надежность Долговременная память определяет объем БД

Локализация (расчленение) Единственная копия, расчленение по узлам (полная копия БД не допускается) Объем БД определяется памятью сети Снижение стоимости РБД Время отклика при параллельной обработке уменьшается Малая чувствительность к узким местам Повышенная надежность при высокой локализации данных Запрос может быть по всем узлам Доступ хуже, чем при централизации Рекомендации применения: долговременная память ограничена по сравнению с объемом БД; должна быть повышена эффективность функционирования при высокой степени локализации

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

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

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

Рис. 6. Архитектура клиент-сервер

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

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

Работа в архитектуре клиент-сервер может поддерживаться и с помощью схемы OPENDATABASECONNECTIVITY (ODBC), как показано на рис. 7.

Рис. 7. ODBC в архитектуре клиент-сервер

В этом случае сеть образуется путем соединения серверов. Такое соединение обеспечивается или средствами СУБД (SQL Server) или мониторами транзакций (TUXEDO).

Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность
своей работы


Новые загруженные работы

Дисциплины научных работ





Хотите, перезвоним вам?