ВУЗ:
Составители:
Рубрика:
72
тогда и только тогда, когда имеет место закономерность, описываемая конъюнкцией
следующих фактов:
- вершина
i
g
′
~
имеет вектор η
i
- P
par
(η
i
, t(z
1
, y
1
), t(z
2
, y
2
), t(z
3
, y
3
));
- z
2
имеет значение «2» - P
E
(y
2
, 2).
Тогда элементы продукции pr
15
Tr
записываются в виде:
q
15
Tr
= P
par
(η
i
, t(z
1
, y
1
), t(z
2
, y
2
), t(z
3
, y
3
))
∧
P
E
(y
2
, 2) ↔ ),,
~
(
r
tris
tygP ∧ P
par
(τ
i
, t(x
i1
, y
5
), t(x
i2
,
y
6
), t(x
i3
, y
7
), t(x
i4
, Null), t(x
i5
, Null));
r
15
Tr
= add[(
i
g
′
~
, y) ∧ P
par
(τ
i
, t(x
i1
, 1), t(x
i2
, Null), t(x
i3
, Null), t(x
i4
, Null) , t(x
i5
, Null))].
Второй ситуации соответствует продукция pr
16
Tr
=<q
16
Tr
, r
16
Tr
>, где
q
16
Tr
= P
par
(η
i
, t(z
1
, y
1
), t(z
2
, y
2
), t(z
3
, y
3
))
∧
P
E
(y
2
, 1)
∧
P
f
(t
in
(
i
g
′
~
), y
4
, f
25
) ↔ ),,
~
(
r
tris
tygP
∧ P
par
(τ
i
, t(x
i1
,), t(x
i2
, y
6
), t(x
i3
, y
7
), t(x
i4
, Null) , t(x
i5
, Null)), где P
f
(t
in
(
i
g
′
~
), y
4
, f
25
) –
функциональный предикат, в котором f
25
– ссылка на процедуру F
25
, возвращающую в
переменной y
4
– имя таблицы атрибута
i
g
′
~
;
r
16
Tr
= add[(
i
g
′
~
, y) ∧ P
par
(τ
i
, t(x
i1
, 2), t(x
i2
, y
4
), t(x
i3
, Null), t(x
i4
, Null) , t(x
i5
, Null))].
Третьей ситуации соответствует продукция pr
17
Tr
=<q
17
Tr
, r
17
Tr
>, где
q
17
Tr
= P
par
(η
i
, t(z
1
, y
1
), t(z
2
, y
2
), t(z
3
, y
3
))
∧
(P
E
(y
2
, 3)∨ P
E
(y
2
, 4)∨ P
E
(y
2
, 5)) ↔ P
par
(τ
i
, t(x
i1
,
y
5
), t(x
i2
, y
6
), t(x
i3
, y
7
), t(x
i4
, Null) , t(x
i5
, Null));
r
17
Tr
= add[P
par
(τ
i
, t(x
i1
, 3), t(x
i2
, Null), t(x
i3
, Null), t(x
i4
, Null) , t(x
i5
, Null))].
Четвертой ситуации соответствует продукция pr
18
Tr
=<q
18
Tr
, r
18
Tr
>, где
q
18
Tr
= P
par
(η
i
, t(z
1
, y
1
), t(z
2
, y
2
), t(z
3
, y
3
))
∧
P
E
(z
2
, 6)
∧
P
f
(t
in
(
i
g
′
~
), y
4
, f
26
) ∧ P
f
(t
in
(y
4
), y
5
,
f
25
) ↔ P
par
(τ
i
, t(x
i1
, y
5
), t(x
i2
, y
6
), t(x
i3
, y
7
), t(x
i4
, Null) , t(x
i5
, Null)), где P
f
(t
in
(
i
g
′
~
), y
4
, f
26
) –
функциональный предикат, в котором f
26
– ссылка на процедуру F
26
, возвращающую в
переменной y – понятие, расположенное в предыдущей вершине
1
~
−
′
i
g ;
r
18
Tr
= add[P
par
(τ
i
, t(x
i1
, 4), t(x
i2
, y
5
), t(x
i3
, y
4
), t(x
i4
, Null) , t(x
i5
, Null))].
Выполнение данных продукций позволит сформировать граф зависимостей
G
~
,
вершины которого являются терминами физической модели данных.
3.3. Формирование SQL-запроса или построение преобразования
4
Ψ
Для построения Ψ
4
необходимо выполнить преобразования: QGG →→
Ψ
′′
Ψ
′
44
~
, где
G
~
- граф зависимостей в терминах физической модели данных, G - граф SQL-запроса, Q -
SQL-запрос в виде команды SELECT.
Представление решения задачи как анализ возможных ситуаций предполагает
построение и доказательство гипотез о том, какие ситуации могут быть описаны графом
G
~
.
Полнота множества гипотез определяется сложностью связей вершин (таблиц,
расположенных в вершинах графа) между собой. Сложность связей вершин зависит от
взаимосвязей таблиц в модели данных. Таким образом, мы имеем граф
G
~
, отображающий
запрос пользователя, к каждой вершине которого приписан вектор
τ
, а также граф
Ε
,
отображающий модель данных. Граф
G
~
задан множеством вершин g
~
и множеством дуг
{(
ji
gg
~
,
~
)|
Ggg
ji
~
~
,
~
∈
}. Граф
Ε
задан множеством предикатов
par
P
, описывающих физическую
модель данных. Тогда необходимо рассмотреть две гипотезы, связанные с типом
взаимосвязи пары смежных вершин графа
G
~
и соответствующих вершин графа Е:
тогда и только тогда, когда имеет место закономерность, описываемая конъюнкцией
следующих фактов:
- вершина g~i′ имеет вектор ηi - Ppar(ηi, t(z1, y1), t(z2, y2), t(z3, y3));
- z2 имеет значение «2» - PE(y2, 2).
Тогда элементы продукции pr15Tr записываются в виде:
q15Tr = Ppar(ηi, t(z1, y1), t(z2, y2), t(z3, y3)) ∧ PE(y2, 2) ↔ Ps ( g~i , y, t trr ) ∧ Ppar(τi, t(xi1, y5), t(xi2,
y6), t(xi3, y7), t(xi4, Null), t(xi5, Null));
r15Tr = add[( g~i′ , y) ∧ Ppar(τi, t(xi1, 1), t(xi2, Null), t(xi3, Null), t(xi4, Null) , t(xi5, Null))].
Второй ситуации соответствует продукция pr16Tr =, где
q16Tr = Ppar(ηi, t(z1, y1), t(z2, y2), t(z3, y3)) ∧ PE(y2, 1) ∧ Pf(tin( g~i′ ), y4, f25) ↔ Ps ( g~i , y, t trr )
∧ Ppar(τi, t(xi1,), t(xi2, y6), t(xi3, y7), t(xi4, Null) , t(xi5, Null)), где Pf(tin( g~i′ ), y4, f25) –
функциональный предикат, в котором f25 – ссылка на процедуру F25, возвращающую в
переменной y4 – имя таблицы атрибута g~i′ ;
r16Tr = add[( g~i′ , y) ∧ Ppar(τi, t(xi1, 2), t(xi2, y4), t(xi3, Null), t(xi4, Null) , t(xi5, Null))].
Третьей ситуации соответствует продукция pr17Tr =, где
q17Tr = Ppar(ηi, t(z1, y1), t(z2, y2), t(z3, y3)) ∧ (PE(y2, 3)∨ PE(y2, 4)∨ PE(y2, 5)) ↔ Ppar(τi, t(xi1,
y5), t(xi2, y6), t(xi3, y7), t(xi4, Null) , t(xi5, Null));
r17Tr = add[Ppar(τi, t(xi1, 3), t(xi2, Null), t(xi3, Null), t(xi4, Null) , t(xi5, Null))].
Четвертой ситуации соответствует продукция pr18Tr =, где
q18Tr = Ppar(ηi, t(z1, y1), t(z2, y2), t(z3, y3)) ∧ PE(z2, 6) ∧ Pf(tin( g~i′ ), y4, f26) ∧ Pf(tin(y4), y5,
f ) ↔ P (τ , t(x , y ), t(x , y ), t(x , y ), t(x , Null) , t(x , Null)), где P (t ( g~ ′ ), y , f ) –
25 par i i1 5 i2 6 i3 7 i4 i5 f in i 4 26
функциональный предикат, в котором f26 – ссылка на процедуру F26, возвращающую в
переменной y – понятие, расположенное в предыдущей вершине g~i′−1 ;
r18Tr = add[Ppar(τi, t(xi1, 4), t(xi2, y5), t(xi3, y4), t(xi4, Null) , t(xi5, Null))].
~
Выполнение данных продукций позволит сформировать граф зависимостей G ,
вершины которого являются терминами физической модели данных.
3.3. Формирование SQL-запроса или построение преобразования Ψ4
Ψ′4 Ψ4′′ ~
Для построения Ψ4 необходимо выполнить преобразования: G → Q , где
→ G
~
G - граф зависимостей в терминах физической модели данных, G - граф SQL-запроса, Q -
SQL-запрос в виде команды SELECT.
Представление решения задачи как анализ возможных ситуаций предполагает
~
построение и доказательство гипотез о том, какие ситуации могут быть описаны графом G .
Полнота множества гипотез определяется сложностью связей вершин (таблиц,
расположенных в вершинах графа) между собой. Сложность связей вершин зависит от
~
взаимосвязей таблиц в модели данных. Таким образом, мы имеем граф G , отображающий
запрос пользователя, к каждой вершине которого приписан вектор τ, а также граф Ε,
~
отображающий модель данных. Граф G задан множеством вершин g~ и множеством дуг
~
{( g~i , g~ j )| g~i , g~ j ∈ G }. Граф Ε задан множеством предикатов Ppar , описывающих физическую
модель данных. Тогда необходимо рассмотреть две гипотезы, связанные с типом
~
взаимосвязи пары смежных вершин графа G и соответствующих вершин графа Е:
72
Страницы
- « первая
- ‹ предыдущая
- …
- 70
- 71
- 72
- 73
- 74
- …
- следующая ›
- последняя »
