ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. “Приборостроение”. 2012
35
Рис. 2. Пример синхронного конвейера колоночного хранилища
Итераторная модель.
Для колоночных хранилищ характерны
следующие изменения:
возможно наличие нескольких родительских узлов, т. е. ре-
зультаты операции передаются не единственному следующему опе-
ратору;
используются как итераторы по кортежам, так и итераторы по
блокам;
вводится операция материализации кортежа: получение ис-
ходного или необходимого на данном этапе кортежа на основе пере-
даваемых блоков значений атрибута.
Наличие нескольких родительских узлов ставит следующую про-
блему: если один родительский элемент обрабатывает входные дан-
ные значительно быстрее, чем другой, данные могут быть потеряны и
не переданы более медленному родительскому узлу.
В работе [14]
данную проблему решают следующим образом: вершиной у графа
всегда является единственный элемент, который гарантирует одина-
ковую частоту запросов к нижестоящим узлам для всего графа.
Скобочный шаблон.
Для колоночных систем в скобочный шаб-
лон не вносится значительных изменений. Меняется формат выход-
ных данных: это могут быть как кортежи, так и позиции элементов и
указатели на блоки данных.