СУБД (колоночными — Vertica, ParAccel, MonetDB и др.). Для приня-
тия обоснованного технического решения по выбору типа СУБД не-
обходимо использовать средства моделирования. Для традиционных
реляционных СУБД такие методы уже существуют [5]. Для парал-
лельных СУБД подобные исследования ведутся [6–9], но находятся на
начальной стадии развития.
Ранее в статье [10] были предложены математические методы оцен-
ки времени выполнения запроса к одной таблице в параллельной ко-
лоночной системе баз данных (ПКСБД). В настоящей работе предлага-
ются математические методы оценки времени выполнения соединения
таблиц в ПКСБД, учитывающие особенности выполнения запросов к
БД проектируемой системы, а также особенности реализации коло-
ночных хранилищ. Получение такой оценки важно, так как операция
соединения (join) часто используется в аналитических запросах к хра-
нилищам данных, построенным на основе реляционных БД (ROLAP).
Организация работы колоночного хранилища.
Под строчным
хранением данных обычно понимается физическое хранение кортежа
любого отношения в виде одной записи, в которой значения атрибу-
тов идут последовательно одно за другим, а за последним атрибутом
записи в общем случае следует новая запись отношения [11]. Таким
образом, на физическом носителе отношение
R
представлено в следу-
ющем виде:
[ ˙
a
11
,
˙
a
21
, . . . ,
˙
a
n
1
]
1
[ ˙
a
12
,
˙
a
22
, . . . ,
˙
a
n
2
]
2
[ ˙
a
13
,
˙
a
23
, . . . ,
˙
a
n
3
]
3
. . .
. . .
[ ˙
a
1
m
, a
2
m
, . . . ,
˙
a
nm
]
,
где
˙
a
ij
— значение атрибута
a
i
в
j
-м кортеже отношения
R
;
[ ˙
a
1
j
,
˙
a
2
j
, . . .
. . . ,
˙
a
nj
]
j
—
j
-й кортеж отношения
R
;
n
— число атрибутов отноше-
ния
R
;
m
=
T
(
R
)
— число кортежей отношения
R
.
В колоночных хранилищах значения одного атрибута хранятся по-
следовательно друг за другом [11], т.е. на физическом носителе отно-
шение
R
примет следующий вид:
h
˙
a
11
,
˙
a
12
,
˙
a
13
, . . . ,
˙
a
1
m
i
1
h
˙
a
21
,
˙
a
22
,
˙
a
23
, . . . ,
˙
a
2
m
i
2
. . .
. . .
h
˙
a
n
1
,
˙
a
n
2
,
˙
a
n
3
, . . . ,
˙
a
nm
i
n
,
где
˙
a
ij
— значение атрибута
a
i
в
j
-м кортеже отношения
R
;
h
˙
a
i
1
,
˙
a
i
2
,
˙
a
i
3
, . . . ,
˙
a
im
i
i
—
i
-й столбец (атрибут) отношения
R
.
Каждая колонка, хранимая на диске, разделена на блоки определен-
ного размера. Блок состоит из заголовка, размер которого пренебре-
жимо мал по сравнению с размером блока и непосредственно данных.
При одном запросе к диску происходит чтение нескольких блоков,
число которых определяется некоторым параметром. Каждой записи
в столбце сопоставляется ее позиция (номер строки). В большинстве
ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. “Приборостроение”. 2012. № 4 81