15
Распределенные Базы данных

Распределенные Базы данных

  • Upload
    kalyca

  • View
    52

  • Download
    4

Embed Size (px)

DESCRIPTION

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

Citation preview

Page 1: Распределенные  Базы данных

Распределенные

Базы данных

Page 2: Распределенные  Базы данных

Распределенные

Базы данных

Под распределенной базой данных (DDB) обычно подразумевают базу данных, включающую фрагменты из

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

управляются различными СУБД.

Распределенная база данных выглядит с точки зрения пользователей и прикладных программ как обычная

локальная база данных.

В этом смысле слово «распределенная» отражает способ организации данных, но не внешнюю ее характеристику.

Page 3: Распределенные  Базы данных

Определитель Дейта

12 свойств или качеств идеальной DDB

• Локальная автономия

• Независимость узлов

• Непрерывные операции

• Прозрачность расположения

• Прозрачная фрагментация

• Прозрачное тиражирование

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

Page 4: Распределенные  Базы данных

Определитель Дейта

12 свойств или качеств идеальной DDB

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

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

• Независимость от операционных систем

• Прозрачность сети

• Независимость от баз данных

Page 5: Распределенные  Базы данных

Целостность данных

В DDB поддержка целостности и согласованности свойств:

локальная автономия и независимость узлов, представляет

собой сложную проблему.

Ее решение – синхронное и согласованное изменение

данных в нескольких локальных базах данных, составляющих

DDB – достигается применением протокола двухфазной

фиксации транзакций.

Page 6: Распределенные  Базы данных

Прозрачность расположения

Это качество DDB в реальных продуктах должно

поддерживаться соответствующими механизмами.

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

Рассмотрим пример из ORACLE

Page 7: Распределенные  Базы данных

Oracle. (Узел в Лондоне)

CREATE PUBLIC DATABASE LINK London. com CONNECT TO London_unix USING

oracle_user_ID;

SELECT customer.cust_name, order.order_date FROM [email protected], order

WHERE customer.cust_number = order.cust_number

Создадим ссылку связав ее с символическим именем

Запрос оператора таблицы, хранящейся в этой базе

Page 8: Распределенные  Базы данных

SELECT customer.cust_name, order.order_date FROM customer, order

WHERE customer.cust_number = order.cust_number

CREATE SYNONYM customer FOR [email protected]

Определим .. & .. как синонимы:

Oracle. (Узел в Лондоне)

Теперь можем написать полностью независимый от расположения базы данных запрос:

Page 9: Распределенные  Базы данных

Иерархически организованная DDB

HQ

RESEARCH SALES

ASIAEUROPE

JAPAN CHINA FRANCE GERMANY

Page 10: Распределенные  Базы данных

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

Обработка распределенных запросов (Distributed Query - DQ) – задача, более сложная, нежели обработка локальных и она

требует интеллектуального решения с помощью особого компонента – оптимизатора DQ.

Page 11: Распределенные  Базы данных

База данных распределена по 2 узлам сети.

Таблица detail – 1 узел; таблица supplier – на другом

Размер – 1000 строк; размер – 100 строк.

SELECT detail_name, supplier_ name, supplier_addres

FROM detail, supplier

WHERE detail.supplier_number = supplier.supplier_number;

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

Page 12: Распределенные  Базы данных

Межоперабельность

В контексте DDB межоперабельность означает две вещи:

1. Это качество, позволяющее обмениваться данными между базами данных различных поставщиков.

2. Это возможность некоторого унифицированного доступа к данным в DDB из приложения.

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

Page 13: Распределенные  Базы данных

Технология тиражирования данных

Принципиальная характеристика тиражирования данных (Data Replication - DR) заключается в отказе от физического

распределения данных.

Суть DR состоит в том, что любая база данных всегда является локальной;

данные размещаются на том узле сети, где они обрабатываются;

все транзакции в системе завершаются локально

Page 14: Распределенные  Базы данных

Технология тиражирования данных

Тиражирование данных – это асинхронный перенос изменений объектов исходной базы данных в базы, принадлежащим различным узлам распределенной системы.

Функции DR выполняет, как правило, специальный модуль СУБД – сервер тиражирования данных, называемый репликатором (так устроены СУБД CA-OpenIngres и Sybase)

Page 15: Распределенные  Базы данных

Моментальный снимок (Oracle)

CREATE SNAPSHOT unfilled_orders

REFRASH COMPLETE

START WITH TO_DATE(‘DD-MON-YY HH23:MI:55’)

NEXT SYSDATE +7

AS SELECT customer_name, customer_address, order_date

FROM customer@paris, order@london

WHERE customer.cust_name = order.customer_number AND order_complete_flag=“N”;