Принципы реализации машин БД

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


Быстрое развитие потребностей применений БД  выдвигает  новые  требования  к
СУБД:

поддержка широкого спектра типов представляемых данных и операций  над  ними
(включая фактографические, документальные, картинно-графические данные) ;

естественные и эффективные представления в БД разнообразных отношений  между
объектами  предметных  областей   (например,   пространственно-временных   с
обеспечением визуализации данных);

поддержка непротиворечивости данных и реализация дедуктивных БД;

обеспечение целостности БД  в  широком  диапазоне  разнообразных  предметных
областей и операционных обстановок;

управление распределенными БД, интеграция неоднородных баз данных;

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

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

многоуровневое и сложное программное обеспечение СУБД снижает  эффективность
и надежность функционирования БД;

универсальная ЭВМ оказывается перегруженной  функциями  управлениями  базами
данных, что снижает  эффективность  функционирования  собственно  прикладных
систем;

централизация и интеграция данных в сетях  персональных  и  профессиональных
ЭВМ нереализуема с  приемлемой  стоимостью  без  включения  в  состав  сетей
специализированных ЭВМ для поддержки функции СУБД.

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

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


Первые публикации по МВД появились в 1974 г., сейчас можно назвать более  50
проектов,  некоторые  уже  реализованы  в  виде  промышленных  прототипов  и
являются коммерческими изделиями.  Исследования  по  аппаратурной  поддержке
операций  над  базами  данных  проводятся  и  в  нашей   стране.   Основными
критериями для оценки того или иного проекта  являются  полнота  выполняемых
функций СУБД и ожидаемое повышение  производительности  при  их  выполнении.
Это одинаково важно как для МБД, функционирующих совместно с главной  ЭВМ  в
составе единой вычислительной системы,  так  и  для  МБД,  являющейся  узлом
локальной сети (data computer). Во всех современных проектах и  коммерческих
МБД реализован  полный  объем  функций  СУБД.  Повысить  производительность,
учитывая  ограниченные  скоростные  характеристики  современной   элементной
базы,   можно   только   структурными   методами   (за   счет   структурного
распараллеливания).  В   силу   этого   МБД   являются   специализированными
параллельными вычислительными системами, и при их  проектировании  требуются
единая методология сравнения и четкие критерии оценки производительности.  В
настоящее время ведутся интенсивные исследования в этой области.

Основными  техническими  приемами,  применяемыми   в   структурных   методах
повышения производительности МВД, являются следующие:

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

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


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

использование ассоциативной памяти в  качестве  буферной  и  соответствующих
алгоритмов обработки данных;

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

реализация  режимов  параллельной  интерпретации  каждой  операции  над   БД
(горизонтальный параллелизм типа SIMD) и  режимов  конвейерной  и  потоковой
обработки не только операций, но и транзакций в целом;

функциональная  специализация  процессоров   обработки   и   их   аппаратная
реализация в виде СБИС.

Основные направления развития структур МВД:

Можно выделить два обобщенных направления, в  которых  ведутся  исследования
по структурным методам повышения производительности  МВД:  многопроцессорные
неоднородные  (МН)  и  сетевые  МВД.  На   рис.   1   приведены   обобщенные
топологические схемы  таких  МВД.  Частным  случаем  МН  МВД  можно  считать
коммерческие МВД IDM-500, RS-310, iDBP 86/440, топологическая схема  которых
приведена на рис. 2.

                                    [pic]
                     Рис. 1. Топология двух классов МВД:

   а - многопроцессорные неоднородные МВД с несколькими уровнями обработки
                               б - сетевые МВД

К МН МВД можно отнести  большинство  современных  проектов  МВД,  таких  как
DELTA, GRACE, DSDBS, MPDC,  SABRE  и  др.  Основными  особенностями  МН  МВД
являются следующие.

1. Наличие нескольких уровней обработки данных, в частности, трех основных:


селекция  и  первичная  фильтрация  данных  непосредственно  в   контрольных
устройствах массовой памяти;

вторичная  обработка,  заключающаяся  в  реализации   операций   реляционной
алгебры над вспомогательными отношениями, полученными на первом этапе;


                                    [pic]
 /\ - универсальный обрабатывающий              /__/ -коммуникационный
 процессор

      процессор (серийный микропроцессор)


     - специализированный                                       -
 коммутирующее устройство (общая

       обрабатывающий процессор                             шина,
 переключательная матрица,

 О - локальная полупроводниковая память             кольцевая коммутирующая
 шина,


         коммутирующая сеть)


        - буферная общедоступная память                 - Управляющий
процессор (подсистема)


      - устройство массовой памяти

        с контроллером (НМД с контроллером)


                     Рис. 2. Топология коммерческих МБД


структурная обработка или обработка метаданных,  заключающаяся  в  поддержке
вспомогательных    структур     данных     (индексация,     мультиатрибутная
кластеризация) .

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


3. Наличие  функционального  параллелизма,  при  котором  различные  функции
первичной и вторичной  обработки  реализуются  на  физически  распределенной
аппаратуре.  При  этом  часть  функциональных   устройств   реализуется   на
универсальных  микропроцессорах,  часть  в  виде  спецаппаратуры  (например,
заказных   СБИС).   Функциональный   параллелизм    позволяет    реализовать
конвейерное выполнение  транзакций  и  отдельных  запросов.  В  более  общих
случаях   для   увеличения   производительности   допускается   дублирование
функциональных процессоров на наиболее трудоемких операциях.

В качестве наиболее типичных примеров таких МН МВД можно  рассмотреть  DELTA
и GRACE. Японский проект МВД (рис. 3) лежит в основе вычислительной  системы
5-го поколения. Действующий в  настоящее  время  прототип  состоит  из  двух
подсистем:

[pic]

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

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

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


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

  подсистемы  иерархической  памяти  (ИЛ),  содержащей  системную  буферную
память (электронный кэш-диск емкостью 128 Мбайт), массовую память

с восемью НМД (с контроллером магнитного диска КМД) общей емкостью

20 Гбайт и четырьмя НМЛ (с контроллером магнитной ленты - КМЛ) , а так

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

Основным функциональным узлом МЕД DELTA является реляционный

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

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

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

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

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


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



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


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

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

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

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

кортежей читаемого отношения.

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

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


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

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


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


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


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

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

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

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

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

   Особый  интерес  приобретает  создание  систолических  МВД  в   связи   с
появлением  серийных  однокристальных  транспьютеров,  содержащих  наряду  с
процессором и памятью каналы (порты  ввода-вывода).  Например,  промышленный
транспьютер фирмы INMOS IMS Т414 имеет  следующие  характеристики.  В  одном
кристалле реализован  32-разрядный  процессор  быстродействием  до  10  млн.
опер./с, статическое ОЗУ на  2  Кбайт,  четыре  канала  связи,  32-разрядный
интерфейс   памяти   и   контроллер   динамического    ОЗУ.    Конструктивно
транспьютерная  матрица,   являющаяся   основным   элементом   систолических
транспьютерных  МВД  (см.  рис.  5),  может  быть  реализована   посредством
серийных транспьютерных плат IMS ВОООЗ той же фирмы. Эта  двойная  европлата
содержит четыре транспьютера Т414,  связанных  между  собой  портами  связи,
четыре устройства динамической памяти по 256 Кбайт каждое и  четыре  внешних
порта  ввода-вывода.  Возможно,   в   ближайшее   время   применение   таких
транспьютерных  плат  переведет  проекты  систолических   МВД   из   области
теоретических исследований в область практической реализации.



                                    [pic]
   Основной проблемой в распределенных (сетевых)  МБД  является  оптимальная
кластеризация  данных  по  локальным  УМП   и   поддержка   соответствующей
распределенной индексации. В GAMMA,  например,  предлагается  кластеризация
каждого  отношения   по   всем   УМП   (в   соответствии   с   хешированием
значенийключевых атрибутов и созданием распределенного по УМП индекса  этих
значений). В  NODD  предлагается  равномерное  распределение  отношений  по
узлам решетки. Между конкретными кортежами разных  отношений,  для  которых
действуют семантические связи, существуют указатели, задающие  расположение
связанных кортежей (номера узлов и их адреса в УМП). Таким образом,  запрос
в БД возбуждает связи между кортежами в узлах  решетки  и  порождает  поток
данных  между  ними.  Это  позволяет  реализовать  в  такой  МВД  потоковую
обработку сложных запросов на основе модели «активного графа»


К классу  сетевых  относится  коммерческая  МВД  фирмы  Teradata  DBC  1012,
которая интенсивно распространяется и находит широкое применение в  разлиных
информационных системах. На  рис.  6  изображена  конфигурация  DBC  1012  с
восемью  обрабатывающими  процессорами  ПМД  (на  базе  i80386),  каждый  из
которых имеет НМД и подключается  к  коммуникационной  сети  типа  двоичного
дерева  (Y-сеть).  В  узлы  этой  сети  встроены  сетевые   высокоскоростные
процессоры  и  программируемые  логические  матрицы,   реализующие   функции
управления сетью. Y-сеть  позволяет  осуществлять  дуплексный  обмены  между
обрабатывающими процессорами. В эту же  сеть  подключаются  коммуникационные
процессоры  (ИЛ)  для  осуществления  интерфейса  с  главной   ЭВМ.   Каждый
обрабатывающий процессор обеспечивает поддержку  всех  операций  реляционной
алгебры, достаточных для выполнения операторов SQL,  поддержку  своей  части
БД, а также  выполнение  всех  функций  управления  транзакциями  над  своей
частью БД, в том числе защиту целостности, восстановления и  т.  д.  Образцы
DBC  1012  включают  до  128   процессоров   и   имеют   распределенную   по
обрабатывающим процессорам полупроводниковую память емкостью  412  Мбайт  на
один процессор. Общая емкость массовой памяти составляет  до  1000  Гбайт  и
общее быстродействие - до 10^9 опер./с.

                                    [pic]

Два свойства DBC 1012 характерны для всех сетевых МЕД:
        обеспечение  возможности  увеличения  мощности  наращиванием  числа
обрабатывающих процессоров, так  что  производительность  при  этом  растет
линейно (показатель линейности роста производительности DBC 1012  от  числа
процессоров составляет 97%);

   обеспечение надежности функционирования за  счет  дублирования  данных  в
локальных УМП (т. е. обеспечивается работа без краха системы при выходе  из
строя отдельных процессоров или УМП).

Третье направление  исследований  в  области  МБД  заключается  в  создании
недорогих коммерческих  устройств  на  серийных  процессорных  элементах  с
шинным интерфейсом (топология таких МБД изображена на рис. 2,а). В качестве
примера рассмотрим МБД фирмы Britton Lee IDM 500, структурная схема которой
изображена  на  рис.   7.   Хотя   эти    изделия   не   ориентированы   на
высокопараллельную обработку и содержат ограниченное  число  функциональных
процессоров, они удовлетворяют сформулированным выше  принципам  МН  МБД  и
полностью  реализуют  все   основные   функции   МБД.   Структурная   схема
коммерческих МБД является частным случаем МН МБД (см. рис. 2,a).  Роль  СБП
выполняет полупроводниковая память, к которой через общую шину подключаются
периферийные контроллеры НМД со  встроенными  микропроцессорами  AMD  2901,
процессор обработки (процессор  БД)  на  основе  Z8002  и  до  8  канальных
процессоров для подключения к главной ЭВМ (канал IBM 370, интерфейс  с  VAX
750) или подключения к локальной сети (Ethernet). Кроне того, к общей  шине
может подключаться особый функциональный  процессор  (акселератор  БД)  для
выполнения  тех  операций,  которые  являются   узким   местом   (например,
сортировка отношений). Старшая модель IDM SOO/XL с емкостью внешней  памяти
более 1 Гбайт на жестких МД и 500 Мбайт на МЛ имеет производительность 1000
транзакций/мин и одновременно обслуживает до 400 пользователей.

   Развитием этого  направления  в  разработках  фирмы  Britton  Lee  явился
реляционный файлсервер (data/file server) RS310  -  автономное  устройство,
подключаемое к локальной сети Ethernet или непосредственно к главной ЭВМ по
интерфейсу RS232. Он включает:

        собственно процессор базы данных (1  плата)  на  основе  28000  (10
Мгц); соединенную с этим процессором оперативную память емкостью 1 Мбайт на
одной плате;

   два жестких диска типа винчестер (5 1/4  дюйма)  по  80  Мбайт  каждый  с
соответствующим контроллером;

   контроллер кассетной МЛ с 60 Мбайт на кассете (Streaming tape 1/4 дюйма);


   до четырех интерфейсных  плат  двух  типов  (интерфейс  RS232  с  восемью
выходами или интерфейс локальной сети Ethernet).

   Каждая интерфейсная плата  содержит  процессор  28000  и  свою  локальную
память. ,RS310 может быть использован или как автономная  СУБД  с  выходным
языком SQL, поддерживая при этом все функции СУБД, за  исключением  первого
этапа трансляции с SQL (управление  транзакциями,  параллельное  выполнение
запросов, откаты и восстановления, автоматическую оптимизацию запросов и т.
п.), или как интегрированная система управления  файлами.  При  этом  RS310
выступает для  главной  ЭВМ  в  качестве  интеллектуального  контроллера  с
буферизацией  и  удовлетворяет  интерфейсу  SCSI  (Small  Computer   System
Interface). RS310 обеспечивает одновременную работу до 50  пользователей  и
выполняет одновременно до 10 запросов. Ближайшая перспектива развития RS310
- увеличение внешней памяти до восьми НМД емкостью 478 Мбайт и МЛ  емкостью
300 Мбайт.

                                    [pic]
       Рис. 8. Специализированная машина для БД PYRAMID S 9810 (9820)



   Дальнейшим развитием такого подхода к созданию коммерческих МБД  является
их реализация на  модульной  параллельной  мультимикропроцессорной  системе
типа систем S27 и S81 фирмы Sequent и систем серии 9000 (9810, 9820)  фирмы
Pyramid-Sybase. На рис. 8 изображена структурная схема нового изделия фирмы
Pyramid--система 9810(9820), являющаяся специализированной ЭВМ для БД.  Эта
специализированная  машина  предназначена  для  автономной  поддержки  СУБД
Sybase  с  входным  языком  SQL,   а   также   для   поддержки   прикладных
информационных систем на основе  этой  СУБД  для  автоматизации  конторской
деятельности, разработки программного обеспечения и т. п. Система  работает
как data computer в сети ЭВМ и имеет интерфейс не только с локальной  сетью
Ethernet, но и Х25, telenet, darpa.  Общая  дисковая  память  достигает  15
Гбайт. Основная память, подключаемая к устройству управления памятью в виде
плат до  4  и  16  Мбайт,  может  наращиваться  до  128  Мбайт.  В  системе
поддерживается виртуальное адресное пространство 4 Гбайт  со  страницами  в
2048  байт.  В  качестве  процессоров  обработки  выступают  один  или  два
спецпроцессора (CPU), реализованные в виде 32-разрядных процессоров с RISC-
архитектурой. CPU имеет следующие характеристики:

время цикла- 100 нс;

число 32-разрядных регистров - 528;

кэш-память инструкции- 16 Кбайт;

кэш-память - 64 Кбайт.
В RISC-процессорах реализован конвейерный режим выполнения инструкций.


Основой системы является собственная сверхбыстрая шина xtend

(40 Мбайт/с), работающая по принципу коммутации сообщений. Интеллектуальный
процессор ввода-вывода (ПВВ) реализован на базе микропроцессора AMD 29116 с
быстродействием 5 млн. опер./с и содержит 14 параллельных ОМА-контроллеров,
общая  пропускная  способность  которых   11   Мбайт/с.   ПЕВ   обслуживает
периферийные устройства, контроллеры НМД (скорость передачи  в  которых  до
2,5 Мбайт/с) и контроллеры локальной сети (КЛС).

   К  общей  шине  подключается  до  16  портов  с  интерфейсом  RS232   для
обслуживания интеллектуальных терминальных процессоров, с помощью которых к
системе могут подключаться терминальные пользователи.  Подключение  к  шине
адаптера  шины  MULTIBUS  открывает  широкие  возможности  для  подключения
вспомогательных внешних устройств,  в  которых  реализован  интерфейс  этой
шины.

   Управление  системой  осуществляется  процессором  поддержки  системы,  в
функции которого входят также диагностика всех устройств и системы в целом,
сервисная служба системы и  т.  п.  В  этом  процессоре  функционирует  так
называемая двухпортовая  многопроцессорная  операционная  система,  которая
соединяет в себе две версии UNIX ОС: System V. AT&T и 4.0 Berkly.

                          Перспективы развития МБД


   Создание высокопроизводительных  МВД  связывается  с  решением  следующих
проблем, по которым ведутся интенсивные исследования.


   1. Создание специализированных  архитектур  МВД,  сочетающих  достоинства
горизонтального параллелизма при выполнении одной операции с функциональным
параллелизмом при  выполнении  последовательности  операций  и  транзакций.
Особую роль здесь играет реализация конвейерной потоковой  обработки  (data
flow) применительно к операциям реляционной алгебры.

                                    [pic]
        Рис. 5.9. Структура подсистемы потоковой обработки в МВД DFRU


Управление выполнением запросов  при  этом  должно  происходить  собственно
потоками данных, что облегчает  задачу  программного  контроля  выполнением
операций, синхронизации их и т. п. Например,  в  проекте  DFRU  предпринята
попытка аппаратно реализовать потоковую обработку  в  регулярной  структуре
обрабатывающих процессоров  (рис.  9).  Основным  обрабатывающим  элементом
является универсальный компаратор  кортежей  (К).  В  матрице  компараторов
кортежей,  соединяемых   коммутирующими   сетями,   возможна   динамическая
коммутация выходов процессоров обработки i-го уровня со входами процессоров
(i+1)-го  уровня.  В  каждой  строке  матрицы  по  одному   арифметическому
процессору (АП) для реализации агрегатных функций. Связи между процессорами
устанавливаются в соответствии с дугами дерева запроса (дерева  реляционных
операций). Это позволяет отображать дерева запроса  в  дерево  процессоров,
вырезаемых в данной матрице,  так  что  каждой  операции  назначается  один
процессор обработки. После этого исходные отношения в  потоке  читаются  из
подсистемы массовой памяти и обрабатываются конвейерно в настроенном дереве