Upload
teneil
View
52
Download
0
Embed Size (px)
DESCRIPTION
Институт прикладной математики им . М.В.Келдыша РАН. СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ БАЗ ДАННЫХ: ФУНКЦИОНАЛЬНЫЕ ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ. В.Н. Коваленко, Е.И. Коваленко, А.Ю. Куликов. Постановка задачи массовой интеграции. - PowerPoint PPT Presentation
Citation preview
СИСТЕМА МАССОВОЙ ИНТЕГРАЦИИ БАЗ ДАННЫХ:
ФУНКЦИОНАЛЬНЫЕ ВОЗМОЖНОСТИ И СПОСОБ РЕАЛИЗАЦИИ
В.Н. Коваленко, Е.И. Коваленко, А.Ю. Куликов
Институт прикладной математики им. М.В.Келдыша РАН
Постановка задачи массовой интеграции
• Количество интегрируемых баз данных велико (100 и более)
Аспекты интеграции:– язык массовых запросов;– управление инфраструктурой;– интеграция данных;– контроль доступа.
2/10
Язык массовых запросов
• Строится в терминах глобальной схемы таблиц
• Формирование групп на основе метаинформации
SELECT avg(MSK.person.salary) FROM MSK.person
WHERE MSK.region=”Moscow”
3/10
Язык запросов: состав группы
SELECT avg(MSK.person.salary) FROM MSK.person
WHERE MSK.region=”Москва”
БД1 БД2 БД3
region: Москва…
region: Москва…
region: СПБ…
4/10
Язык запросов: интерпретация
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
Выполнение запросов
БД БД БД БД
ВС ВС
Центральный сервер
6/10
Массовый запрос
ВС
Управление инфраструктурой
• Объекты администрирования:– База данных– Вычислительный сервер
• Удаленное выполнение операций.• На базу данных не устанавливается
дополнительное ПО.• Изменения инфраструктуры не прерывают
выполняющиеся запросы.
7/10
Контроль доступа
• Контроль доступа к:– базам данных;– глобальным таблицам и их полям;– строкам таблиц.
• Правила:ИД=значение,
СФД=значение, СПЕЦ=значение, РОЛЬ=значение
Доступные БД
Доступные таблицы
8/10
Расширение OGSA-DAI/DQP
• Массовые запросы и адресация групп БД• Интеграция данных на основе отображений• Динамическое формирование
инфраструктуры• Балансировка нагрузки на вычислительные
ресурсы• Контроль доступа
9/10
PAX сервера
10/10
11
12
Балансировка нагрузки
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
14
Расширение OGSA-DAI/DQP
БД БД БД БД
OGSA-DAI OGSA-DAI
OGSA-DAI
ИзмененныйOGSA-DAI/DQP
15
Выбор подмножества БД
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)
17
Ограничение Global As View
- состав баз данных фиксирован
- позволяет выделитьподзапросы к
интегрируемым БД
GAVG -> Q(D1, …DN)
Ограничение GAVG -> Q1(D1) U … U QN(DN)
18
Понятие группы БД…
…
…
…
19
Формирование группы БД
<Тип = «Завод» AND Регион = «Москва»>
Название = AТип = завод
Регион = Москва…
Название = BТип = завод
Регион = Москва…
Название = CТип = больницаРегион = Москва
…
20
Расширение языка SQL
- именование схем отношений <имя_группы>.<имя_глобальной_схемы>- именование метаатрибутов<имя_группы>.<имя_метааттрибута>
SELECT GroupA.G1.field, GroupA.metaattribute FROM GroupA.G1
21
Составление массового запроса
GroupA : {Dk | Имя = Институт}SELECT * FROM GroupA.G1;
SELECT * FROM GroupA.G1 WHERE GroupA.Имя=‘Институт’;
22
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
24
Добавление базы данных
…
…
25
Подходы к интеграции БД
Физическая интеграция Виртуальная интеграция
БД БД БД БД
ЦентральнаяБД
БД БД БД БД
Медиатор Медиатор
Медиатор
26
Преобразование запроса
SELECT * FROM GroupA.G1 {Group A :} → SELECT * FROM () AS GroupA.G1
GroupA.G1 JOIN GroupA.G2{} →)
GroupA.G1 JOIN GroupB.G2{} →)
27
Метаатрибуты в запросе……
……
Имя = ИнститутРегион = Москва
…
… Имя Регион… Институт Москва
Институт Москва…
… Институт Москва
28
Метаатрибуты в запросе
GroupA.G1 JOIN GroupA.G2 JOIN… →Q1(D1) U Q2(D2) U … →
(a1, a2, … aN, meta1, meta2, …)
- именование метаатрибутов<имя_группы>.<имя_метааттрибута>