Computerworld, США

На смену типовым СУБД приходит идеология сервисов управления базами данных
Курт Монаш — независимый консультант. Ему можно написать на адрес электронной почты curtmonash @monash.com

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

Многообразие схем растет — и чистая реляционная модель рушится под собственным весом. Нужен радикально новый взгляд на управление данными. Новой парадигме я предлагаю дать название DBMS2 (Database Management System Services). Ее ключевыми аспектами являются следующие.

  • СУБД, соответствующие решаемым задачам. Иными словами, нужно использовать самую дешевую и простую базу для данного конкретного набора приложений. В качестве вариантов можно рассмотреть недорогие СУБД с оперативной обработкой транзакций, СУБД старшего класса, программно-аппаратные решения для центров данных, хранилища документов на базе XML, распределенные и/или небольшие СУБД, системы с хранением данных в памяти без хранилища или общие индексаторы без собственных систем хранения и т. д.
  • Серьезные ограничения на сложность реляционных схем. Реляционная схема не должна далеко выходить за рамки двух простых моделей - шаблон/детализация для транзакций и гиперкуб/звезда для аналитики. Все модели с большим уровнем вложенности за некоторыми исключениями лучше обрабатываются в гибких схемах XML. Если требуется доступ к данным из унаследованного приложения, которое нарушает эти правила, лучше организовать его через Web-сервис на базе XML.
  • Интеграция "реляционных" данных и данных на базе XML. Постепенно основная нагрузка по интеграции данных DBMS2 будет "перекладываться" на XML. Однако интеграция корпоративной информации в реляционном виде будет требоваться еще долго, в частности, для подключения ядра OLTP-систем и систем хранения данных.

DBMS2 — это антитеза нынешней теории баз данных в большинстве ее положений. Вместо того чтобы бороться с модульностью, DBMS2 принимает ее. Вместо объединения задач администрирования в один огромный клубок, она распределяет их между многими простыми системами. Кроме всего прочего, в отличие от предлагаемого Oracle идеала в виде большой унифицированной корпоративной реляционной базы данных, DBMS2 — это своего рода прагматичное продолжение того, что делают сейчас в каждой крупной корпорации.

Необходимость и возможность использования DBMS2 объясняется двумя взаимодополняющими тенденциями: сменой платформ и расширением схем. Для начинающих подход DBMS2 интересен тем, что опирается на все более доступные технологии XML и Web-сервисов. Пройдут годы, прежде чем языки манипулирования данными на базе XML станут достаточно надежны, чтобы соответствовать требованиям DBMS2, однако такие разработки будут сделаны, и большинство крупных поставщиков программных решений обеспечат их своевременную поддержку.

Кроме того, одной из самых существенных причин для принятия концепции DBMS2 является поток недорогих альтернатив традиционным СУБД. Для большинства компаний реляционные OLTP-механизмы носят характер приемлемого потребительского продукта. Microsoft SQL Server следует за Oracle, а MySQL (который даже планирует пройти сертификацию у SAP в течение двух-трех лет или за меньший срок) наступает на пятки Microsoft.

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

Возможности, предоставляемые этими развивающимися технологиями, могут уравновешиваться очевидными рисками. Однако в перспективе их принятие станет единственно возможным вариантом из-за растущей сложности схем.

Во-первых, растет число и разнообразие профилей. Профили потребителя из CRM-систем (в идеальном случае с данными полноценного Web-сайта), профили поставщика, пользовательские профили, ориентированные на безопасность, практически во всех случаях представляют собой некую информацию, тип которой изменяется от одного профиля к другому. Мобильные и бытовые устройства только усугубляют ситуацию, добавляя сложности, поскольку требуют поддержки распределенности и дополнительных форм представления. Централизованное управление данными, существовавшее до появления DBMS2, никогда не будет эффективным.

Во-вторых, текстовые документы все больше становятся частью ИТ. Сложными формами представлены контракты, руководства по обслуживанию, медицинские записи, маркетинговый Web-контент, да и просто электронная почта. Структура документов часто непредсказуема, иногда неизвестны их метаданные и средства создания. Универсальные решения для организации работы текстового поиска будут основаны на дальнейшем расширении схем и в некоторой степени на их гибкости.

Наконец, ИТ должны быть пронизаны идеологией полномочий. Безопасность, совместимость, защита на случай пропущенных данных — все это предполагает наличие некоторой формализованной иерархии доверия. Этого требуют недостаточно определенные результаты поисковых систем, недостаточно подкрепленная документами надежность автора и тому подобное. В итоге сложность схемы вырастет настолько, что ее не в силах обработать реляционные системы.

Должны ли вы отказаться от Oracle или DB2? Вовсе не обязательно. Однако, возможно, стоит снизить свою зависимость от каких-либо определенных продуктов. Движение в сторону DBMS2 позволяет использовать положительные стороны технологий баз данных различных разработчиков. В моем блоге по адресу www.computerworld.com/blogs/monash я изложил некоторые идеи относительно использования конкретных продуктов.