Смекни!
smekni.com

Принципы реализации машин БД (стр. 2 из 6)

подсистемы иерархической памяти (ИЛ), содержащей системную буферную память (электронный кэш-диск емкостью 128 Мбайт), массовую память с восемью НМД (с контроллером магнитного диска КМД) общей емкостью 20 Гбайт и четырьмя НМЛ (с контроллером магнитной ленты - КМЛ) , а также универсальную микроэвм в качестве управляющего процессора иерархической памяти (УПИП) и процессора ввода-вывода (ПЕВ). Связь между подсистемами осуществляется высокоскоростным каналом со стандартным интерфейсом со скоростью передачи до 3 Мбайт/с. Все процессоры подсистемы вторичной обработки подключаются к этому каналу посредством ПВВ через специальные адаптеры иерархической памяти (АИП).

Основным функциональным узлом МЕД DELTA является реляционный процессор (РП) баз данных, назначение которого-выполнение операций реляционной алгебры над отношениями произвольного объема с высокой производительностью. Каждый из четырех РП может выполнять отдельную операции:

процессора (КП) и одного процессора технического обслуживания (НТО), вы­полняющего функции диагностики системы, поддержки БД, связи с операто­ром и т. п.;

подсистемы иерархической памяти (ИЛ), содержащей системную буфер­ную память (электронный кэш-диск емкостью 128 Мбайт), массовую память
с восемью НМД (с контроллером магнитного диска КМД) общей емкостью
20 Гбайт и четырьмя НМЛ (с контроллером магнитной ленты - КМЛ) , а так­
же универсальную микроэвм в качестве управляющего процессора иерархиче­ской памяти (УДИЛ) и процессора ввода-вывода (НЕЕ). Связь между под­системами осуществляется высокоскоростным каналом со стандартным интер­фейсом со скоростью передачи до 3 Мбайт/с. Все процессоры подсистемы вторичной обработки подключаются к этому каналу посредством ПВВ через специальные адаптеры иерархической памяти (АИП).

Основным функциональным узлом МЕД DELTA является реляционный
процессор (РП) баз данных, назначение которого-выполнение операций ре­ляционной алгебры над отношениями произвольного объема с высокой произ­водительностью. Каждый из четырех РП может выполнять отдельную операцию реляционной алгебры независимо от других или все они могут выполнять одну операцию параллельно (например, сортировку отношений в ИЛ). РП имеет регулярную структуру (см. рис. 3) для облегчения его реализации в виде СБИС. Кроме этого он в своем составе имеет центральный процессор (ЦП) с памятью 512 Кбайт для реализации операций с обширной логикой (например, агрегатных функций типа min, mах и т. п.). Для облегчения входного (ВП) и выходного (ВЫП) потока данных РП содержит два адаптера иерархической памяти (АИП), а также входной модуль для подготовки кортежей отношений (например, перестановки значений атрибутов). Собственно операция реляционной алгебры реализуется в РП. Процессор слияния (ПСЛ) сортированных сегментов отношений предназначен для слияния сортированных сегментов отношений, а также в нем реализуются операции естественного соединения двух отношений и селекции отношения. Двенадцать процессоров сортировки (ПСО) предназначены для реализации конвейерной однопроходовой сортировки сегмента отношения объемом 64 Кбайт. ПСО и ПСЛ реализованы полностью аппаратно.

Иерархическая память в DELTA является наиболее сложной подсистемой, в функции которой входят:

управление СЕЛ и УМП;

стадирование данных (в виде сегментов отношений) из УМП в СБП в соответствии с заявками РП;

селекция и вертикальная фильтрация отношений при помещении их в СБП с привлечением специального (атрибутного) метода хранения отношений в УМП;

поддержка индексных структур, кластеризация отношений в УМП и организация с их помощью быстрого поиска в УМП.

Рис. 4. Структурная схема МВД GRACE

Вторым примером МН МВД является также японский проект GRACE, структурная схема которого приведена на рис. 4. СБП реализована здесь набором электронных дисков на цилиндрических магнитных доменах. В качестве УМП использованы многоканальные НМД, в каждый канал которых встроены, кроме устройств чтения-записи (Уч/з), процессоры первичной обработки, названные фильтрами потока кортежей (ФПК). Каждый ФПК содержит:

процессор фильтрации (ПФ), осуществляющий в пределах дорожки МД собственно псевдоассоциативный поиск кортежей, удовлетворяющих заданному условию;

процессор проекции (ПП) и преобразования кортежей;


процессор хэширования (ПХ), реализующий динамическую сегментацию
кортежей читаемого отношения.

Фильтр потока кортежей работает в конвейерном режиме и позволяет обрабатывать поступающие из УМП кортежи со скоростью их чтения (обработка «в полете»).

На уровне вторичной обработки применяются процессоры вторичной обработки (ПВО) и ФПК. Назначение ФПК - выполнять описанную выше обработку кортежей результирующих отношений, поступающих из ПВО в СЕЛ. ПВО содержит наряду с процессором реляционной алгебры (ПРА), реализованным на основе универсального микропроцессора со своей локальной памятью, также аппаратный процессор сортировки отношений (ПСО) и процессор выдачи результата (ПВР) в канал главной ЭВМ. ПСО осуществляет потоковую сортировку сегмента отношения, поступающего из банка СЕЛ в процессор реляционной алгебры. Двухпортовые банки СЕЛ подсоединяются к процессорам обработки обоих уровней посредством специальных петлевых шин (СПШ). Эти многоканальные шины с разделением времени осуществляют на каждом уровне обработки коммутацию любого процессора обработки к любому банку памяти и одновременную обработку нескольких банков памяти.

Отличительными особенностями данного проекта являются следующие структурные решения.

1. Метод опережающей подкачки кортежей из УМП в СБП сочетает здесь не только с первичной фильтрацией, но и со специальным распределением кортежей по банкам СЕЛ. Эта так называемая динамическая хэш-сегментация позволяет выполнять операции реляционной алгебры на уровне вторичной обработки параллельно и без обменов несколькими ПPA, так что каждый ПРА реализует бинарную операцию над парой соответствующих сегментов отношений-операндов. Это является одним из источников повышения производительности МБД при выполнении операций реляционной алгебры.

2. Включение в цикл вторичной обработки фильтров потока кортежей, используемых в цикле первичной обработки, позволяет обрабатывать промежуточные отношения в СБП, так же как и исходные отношения БД, единообразно интерпретировать последовательность операций реляционной алгебры. Таким образом, выполнение транзакции, соответствующей сложному запросу к реляционной БД, заключается в многократном выполнении циклов первичной и вторичной обработки.

3. Предварительная и параллельная фильтрация данных со скоростью их поступления из УМП позволяет снизить объем перемещаемых из УМП в СБП данных, что является существенным источником повышения производительности МБД в целом. Этот механизм используется во многих (если не во всех) проектах МН МБД и считается признанным решением.

Как показали многочисленные исследования, СУБД не может быть эффективной, если большая часть ее работает под управлением операционной системы общего назначения. Поэтому повышение эффективности МБД связано с полной изоляцией СУБД в рамках МВД, т. е. реализацией функционално-полных МВД, выполняющих все функции управления транзакциями. Учитывая сложность соответствующей операционной системы МБД, реализовать функционально полную и высокопараллельную МН МВД сложно.

Вторая основная проблема в создании высокопараллельных МН МБД, названная «дисковым парадоксом», заключается в том, что скорость ввода-вывода современных УМП (одноканальные и многоканальные НМД с перемещающимися головками) является узким местом и ограничивает достижение высокого параллелизма в обработке. В МН МБД для решения этой проблемы в качестве кэш-диска применяется большая полупроводниковая буферная память.

Для решения этой проблемы некоторые авторы предлагают сетевые МБД в которых распределенное хранение больших БД осуществляется на большем количестве НМД.

Сетевые МВД (см. рис. 1,б) воплощают принципы однородности структуры, сегментации данных в устройствах массовой памяти и распределения процессоров обработки по УМП. Таким образом, основная идея сетевых MBД - приближение дешевой обрабатывающей логики (в виде универсальных микропроцессоров) к УМП и связывание таких «обрабатывающих хранилищ» в сеть. Учитывая быстро снижающуюся стоимость процессоров oбработки и жестких НМД и успехи в технике коммуникации процессоров, в ее составе такой сети может быть сотни УМП, с каждым из которых соединен свой обрабатывающий процессор. Примерами таких проектов являются МВО; GAMMA. В перспективе развития сетевых MB.Д некоторые авторы видят создание МВД на основе вычислительной систолической среды. Так, проект NODD, схема которого изображена на рис. 5, реализован в виде регулярной решетки, в узлах которой размещены процессорные элементы (ПЭ). С каждым ПЭ связаны своя локальная память (ЛП) и устройство массовой памяти (УМП) в виде жесткого НМД.

Предполагается также замена УМП энергонезависимой полупроводниковой памятью соответствующей емкости («силиконовая» систолическая МВД). Назначение ЛП в каждом узле-хранение программ обработки, копии управляющей программы, буфера для обмена сообщениями и кэш-памяти для своего УМП (3% каждого локального УМП находится в этой локальной кэш-памяти). Для целей надежности пространство на каждом УМП разделено на части: одна часть для хранения части БД, принадлежащей своему узлу, другая-дублирует данные четырех соседних узлов. Особенностью является и то, что управление выполнением транзакций в таких сетевых МВД полностью распределено, так что каждый процессор может взять на себя роль управляющего.