Визит главного архитектора Informix

Пол Браун: «Хорошее объяснение — лучший маркетинг»
Компьютерные технологии часто предстают обезличенными. Оно и хорошо по большому счету; персонификации хватает в политической прессе. С другой стороны, время от времени в компьютерном мире появляются фигуры, по отношению к которым подобный подход был бы все же не слишком справедливым.

К их числу, конечно, относится Пол Браун, официальная должность которого — главный архитектор компании Informix. Его визит совершенно не был похож на очередной визит очередного официального лица, «отрабатывающего» маркетинговый «номер». Не каждое официальное лицо с таким воодушевлением говорит о собственной работе и делает смелые прогнозы развития компьютерных технологий.

Работа Брауна лучше всего характеризуется названием, данным его должности им самим: «главный водопроводчик Informix». Жителям роскошных зданий было бы как минимум неуютно за сверкающими снаружи полированными стеклами, если бы у них внутри не было скрытой от посторонних глаз системы коммуникаций.

Архитектура информационной системы, структура модулей и связей между ними определяет в первую очередь надежность системы и ее масштабируемость. Именно архитектурными решениями формируется возможность расширять систему.

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

По словам Брауна, до недавних пор единственным источником информации для базы данных оставалась клавиатура. Это служило естественным ограничением на типы поддерживаемых данных и на скорость ввода, которая задавалась числом операторов. Сейчас число потенциальных источников информации неизмеримо больше, причем и типы этих источников стали значительно разнообразнее — ими могут стать устройства GPS, цифровые фотоаппараты, Web...

Аналогичным образом расширился диапазон задач, уже решаемых с помощью баз данных, а также скорость, с которой формулируются новые. Иными словами, база данных должна иметь возможность отвечать на такие вопросы, которых не существовало на момент ее создания.

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

Выработанная концепция стала источником значительного выигрыша в быстродействии и объектом критики со стороны конкурентов. Действительно, размещение логики в ядре процессора баз данных, в том числе реализованной независимыми разработчиками, делает его уязвимым. Это так, и, по словам Брауна, ошибка программиста действительно может привести к останову сервера, однако полностью «убить» систему при этом невозможно. С другой стороны, разработку на языке низкого уровня ведут, как правило, не более 10% разработчиков — это уровень модулей DataBlade, уровень программирования типов данных Type Function. На этом уровне предусматриваются строгие проверки и сертификация. Независимые компании разрабатывают эти модули в рамках партнерских отношений, за исключением разработчиков программ с открытыми исходными кодами, о которых речь ниже. Оставшиеся 90% — это уровень бизнес-логики, ошибки в котором не могут нанести вреда серверу.

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

Подобная открытая для сотрудничества модель, как представляется на первый взгляд, как нельзя лучше соответствует модели создания программного обеспечения с открытыми исходными кодами. Informix стала первой американской компанией, предложившей базу данных на Linux и затем обеспечившей поддержку этой ОС в своей базе данных Informix Dynamic Server. Однако с каким бы уважением Браун ни относился к потенциалу Linux, адептам этой операционной системы еще предстоит обосновать свои претензии на лидерство. Наряду с солидными (и не очень) официальными модулями DataBlade существует масса мелких модульчиков, созданных разработчиками систем с открытыми кодами. Браун признался, что даже поручил специальному сотруднику разыскивать и систематизировать все эти модули, но пока ни один из этих самодеятельных продуктов «не тянет» на то, чтобы стать полноценным рыночным продуктом. С другой стороны, Linux, с его точки зрения, обладает неоценимыми преимуществами как серверная ОС.

В подтверждение этих слов директор Informix по развитию бизнеса в России и СНГ Александр Сотников сослался на проект (пока работы не закончены, анонимный) системы на Linux на 1000 пользователей, который разрабатывается сейчас в России.

Архитектура системы до известной степени обуславливает «архитектуру» маркетинга компании. В недавнем прошлом компания пересмотрела структуру семейства продуктов, перейдя от разрозненных продуктов к единому семейству на базе Informix Dynamic Server. Сейчас компания представляет новую версию сервера Informix Internet Foundation.2000. Этот продукт оптимизирован для поддержки масштабируемых Internet-приложений в сочетании с необходимой и проверенной OLTP-функциональностью.

Архитектура этой системы основана на стандартах и поддерживает операционные системы Unix, NT и Linux. По существу, Informix Foundation.2000 представляет собой полную платформу, включающую в себя, помимо собственно сервера баз данных, открытую встроенную виртуальную машину Java, поддержку COM на сервере. Говоря о новых функциях системы, Браун обратил внимание на такую возможность, как интерфейс виртуальных таблиц. Эта функция позволяет работать со структурированными файлами как с таблицами Informix. Она приобретает решающее значение при большом объеме унаследованной информации. Эта функция, наряду с поддержкой обратной совместимости с предыдущими версиями сервера баз данных Informix, в значительной степени способствует сохранению инвестиций.

Само присутствие слова Internet в названии новой системы предполагает наличие средств работы с Сетью. Informix Web DataBlade Module 4.0, входящий в состав платформы, имеет средства, которые упрощают разработку, управление и развертывание в Web приложений для баз данных. Однако о быстро набирающей силу технологии XML Браун говорил довольно осторожно. Нисколько не умаляя достоинств этой технологии, стоит заметить, что, подобно Java примерно двухлетней давности, да и любой другой технологии на подъеме, это имя сопровождается преувеличенным вниманием, что следует иметь в виду при ее освоении.