Классика баз данных - статьи

       

Машины баз данных


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

Обычно при росте объема БД узким местом становятся каналы передачи данных между сервером БД и устройствами хранения. Возможность увеличить количество и пропускную способность таких каналов, а также снизить объем передаваемых данных за счет выполнения части операций по просмотру и выборке данных на уровне ячеек хранения, позволяет снять проблему каналов передачи. Такая связка оборудования и специального ПО, называемая машина баз данных, давно описана в литературе [11, 12]. Примеры – Netezza, Datallegro, Teradata.

Но обычно такие машины баз данных использовали специальное ПО и требовали специальной квалификации для разработки приложений. Они не использовали широко распространенные универсальные СУБД, а универсальные СУБД не поддерживали такую архитектуру. Сейчас началось движение универсальных коммерческих СУБД в сторону машин баз данных. Первый коммерческий пример – совместная машина баз данных Oracle и HP с ячейками хранения Exadata. Она обеспечивает для обычных приложений хранилищ данных Oracle ускорение обработки данных в десятки раз (до 70 раз) без переписывания приложений.

Oracle–HP Database Machine представляет из себя единый преднастроенный компьютер (с ячейками Exadata и кластером БД). Очень важна для таких архитектур сбалансированность компонент, т.е. размера памяти, дисков, числа процессоров, скорости каналов ввода/вывода и т.д.

В том же направлении сейчас движется Microsoft, которая купила DATAllegro и интегрирует ее с MS SQL Server. Машина баз данных не только ускоряет обработку, но и упрощает разработку хранилищ данных, так как многим вопросам настройки СУБД, требовавшим создания индексов, материализованных представлений, секционирования таблиц и индексов, кластеризации данных и настройки областей памяти, ввода/вывода и т.д., теперь можно уделять меньше внимания. За счет очень высокой скорости и распараллеливания выполнения самых тяжелых операций СУБД – full scan, проекция и join, даже не очень хорошо спроектированная БД работает очень быстро. Так что, очевидно, вскоре все коммерческие СУБД, работающие в области хранилищ данных, станут работать в архитектуре машин баз данных.



Содержание раздела