28
СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ БАЗ ДАННЫХ: ФУНКЦИОНАЛЬНЫЕ ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ В.Н. Коваленко, Е.И. Коваленко, А.Ю. Куликов Институт прикладной математики им. М.В.Келдыша РАН

СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ БАЗ ДАННЫХ: ФУНКЦИОНАЛЬНЫЕ ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

  • Upload
    teneil

  • View
    52

  • Download
    0

Embed Size (px)

DESCRIPTION

Институт прикладной математики им . М.В.Келдыша РАН. СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ БАЗ ДАННЫХ: ФУНКЦИОНАЛЬНЫЕ ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ. В.Н. Коваленко, Е.И. Коваленко, А.Ю. Куликов. Постановка задачи массовой интеграции. - PowerPoint PPT Presentation

Citation preview

Page 1: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ БАЗ ДАННЫХ:

ФУНКЦИОНАЛЬНЫЕ ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

В.Н. Коваленко, Е.И. Коваленко, А.Ю. Куликов

Институт прикладной математики им. М.В.Келдыша РАН

Page 2: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

Постановка задачи массовой интеграции

• Количество интегрируемых баз данных велико (100 и более)

Аспекты интеграции:– язык массовых запросов;– управление инфраструктурой;– интеграция данных;– контроль доступа.

2/10

Page 3: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

Язык массовых запросов

• Строится в терминах глобальной схемы таблиц

• Формирование групп на основе метаинформации

SELECT avg(MSK.person.salary) FROM MSK.person

WHERE MSK.region=”Moscow”

3/10

Page 4: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

Язык запросов: состав группы

SELECT avg(MSK.person.salary) FROM MSK.person

WHERE MSK.region=”Москва”

БД1 БД2 БД3

region: Москва…

region: Москва…

region: СПБ…

4/10

Page 5: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

Язык запросов: интерпретация

SELECT avg(MSK.person.salary) FROM MSK.person

БД1 БД2

personname birthdate passport

person: SELECT1…

person: SELECT2…

MSK.person = SELECT1 UNION SELECT2

SELECT avg(MSK_person.salary) FROM (SELECT1 UNION SELECT2) AS MSK_person

5/10

Page 6: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

Выполнение запросов

БД БД БД БД

ВС ВС

Центральный сервер

6/10

Массовый запрос

ВС

Page 7: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

Управление инфраструктурой

• Объекты администрирования:– База данных– Вычислительный сервер

• Удаленное выполнение операций.• На базу данных не устанавливается

дополнительное ПО.• Изменения инфраструктуры не прерывают

выполняющиеся запросы.

7/10

Page 8: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

Контроль доступа

• Контроль доступа к:– базам данных;– глобальным таблицам и их полям;– строкам таблиц.

• Правила:ИД=значение,

СФД=значение, СПЕЦ=значение, РОЛЬ=значение

Доступные БД

Доступные таблицы

8/10

Page 9: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

Расширение OGSA-DAI/DQP

• Массовые запросы и адресация групп БД• Интеграция данных на основе отображений• Динамическое формирование

инфраструктуры• Балансировка нагрузки на вычислительные

ресурсы• Контроль доступа

9/10

Page 10: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

PAX сервера

10/10

Page 11: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

11

Page 12: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

12

Page 13: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

Балансировка нагрузки

SELECT avg(MSK_person.salary) FROM (SELECT1 UNION SELECT2) AS MSK_person

SELECT1 SELECT2БД1 БД2

UNION

avgВС1

ВС2

ВС3

ВС1

ВС2

13/11

Page 14: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

14

Расширение OGSA-DAI/DQP

БД БД БД БД

OGSA-DAI OGSA-DAI

OGSA-DAI

ИзмененныйOGSA-DAI/DQP

Page 15: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

15

Выбор подмножества БД

Page 16: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

16

Интеграция данных

GAV

G Q(D1, … DM}

Query(G, …) Query(Q(D1,..DM),…)

Dnew: G Q(D1, … DM, Dnew)

LAV

D.L Q(G1, .. GN)

Query(G,..) TransformedQuery(D1, ..DM)

Dnew:Dnew.L -> Q(G1, .. GN)

Page 17: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

17

Ограничение Global As View

- состав баз данных фиксирован

- позволяет выделитьподзапросы к

интегрируемым БД

GAVG -> Q(D1, …DN)

Ограничение GAVG -> Q1(D1) U … U QN(DN)

Page 18: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

18

Понятие группы БД…

Page 19: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

19

Формирование группы БД

<Тип = «Завод» AND Регион = «Москва»>

Название = AТип = завод

Регион = Москва…

Название = BТип = завод

Регион = Москва…

Название = CТип = больницаРегион = Москва

Page 20: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

20

Расширение языка SQL

- именование схем отношений <имя_группы>.<имя_глобальной_схемы>- именование метаатрибутов<имя_группы>.<имя_метааттрибута>

SELECT GroupA.G1.field, GroupA.metaattribute FROM GroupA.G1

Page 21: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

21

Составление массового запроса

GroupA : {Dk | Имя = Институт}SELECT * FROM GroupA.G1;

SELECT * FROM GroupA.G1 WHERE GroupA.Имя=‘Институт’;

Page 22: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

22

Page 23: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

23

D2

Пример

G SELECT a, b, c FROM D1.L UNION (SELECT a, b, c FROM D2.L JOIN D3.L ON ext_id = id)

G SELECT a, b, c FROM D1.L UNION (SELECT a, b, c FROM D2.L1 JOIN D2.L2 ON ext_id = id)

D1.La b c

D2.La ext_id

D3.L id b c

Ga b c

Page 24: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

24

Добавление базы данных

Page 25: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

25

Подходы к интеграции БД

Физическая интеграция Виртуальная интеграция

БД БД БД БД

ЦентральнаяБД

БД БД БД БД

Медиатор Медиатор

Медиатор

Page 26: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

26

Преобразование запроса

SELECT * FROM GroupA.G1 {Group A :} → SELECT * FROM () AS GroupA.G1

GroupA.G1 JOIN GroupA.G2{} →)

GroupA.G1 JOIN GroupB.G2{} →)

Page 27: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

27

Метаатрибуты в запросе……

……

Имя = ИнститутРегион = Москва

… Имя Регион… Институт Москва

Институт Москва…

… Институт Москва

Page 28: СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ  БАЗ  ДАННЫХ:  ФУНКЦИОНАЛЬНЫЕ  ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ

28

Метаатрибуты в запросе

GroupA.G1 JOIN GroupA.G2 JOIN… →Q1(D1) U Q2(D2) U … →

(a1, a2, … aN, meta1, meta2, …)

- именование метаатрибутов<имя_группы>.<имя_метааттрибута>