Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Основы проектирования баз данных (По теме “Распределённые базы данных”)

Содержание:

Введение

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

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

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

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

- Набор логически связанных разделяемых данных.

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

- Между фрагментами может быть организованна репликация данных.

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

- Узлы связаны между собой сетевыми соединениями.

- Работа с данными на каждом узле управляется СУБД.

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

Основная часть

Рис. 1. Топология распределенной системы управления базой данных

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

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

Рис. 2. Топология системы с распределенной обработкой

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

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

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

- Системы с разделением памяти.

- Системы с разделением дисков.

- Системы без разделения.

Архитектура систем с параллельной обработкой

C:\Users\nataly\Desktop\PPTX Presentation 123\Слайд1.JPGРис. 3. 1. С разделением памяти

Рис. 3. 2. С разделением дисков

C:\Users\nataly\Desktop\PPTX Presentation 1234.jpg

Рис. 3. 3. Без разделения

C:\Users\nataly\Desktop\PPTX Presentation 12345.jpg

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

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

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

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

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

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

- Иной тип используемого оборудования.

- Иной тип используемого СУБД.

- Иной тип применяемых оборудования и СУБД.

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