Открыть сервис

Informix Universal Server

Informix Universal Server — это объектно-реляционная система управления базами данных (СУБД), разработанная корпорацией Informix Software и выпущенная в 1996 году. Она была одной из первых коммерческих СУБД, реализовавших гибридную архитектуру, сочетающую традиционную реляционную модель с поддержкой абстрактных типов данных, пространственных данных, мультимедиа и пользовательских функций. Система предназначалась для обработки как классических транзакционных нагрузок (OLTP), так и сложных аналитических запросов, что делало её универсальным инструментом для корпоративных информационных систем.

История создания

Разработка Informix Universal Server (IUS) началась в середине 1990-х годов на фоне растущего спроса на СУБД, способные работать с «нетрадиционными» данными — изображениями, аудио, видео, географическими объектами. Предшественником IUS была реляционная СУБД Informix Online, которая, однако, не поддерживала расширенные типы данных. В 1995 году Informix Software приобрела технологию объектно-реляционной СУБД Illustra (разработчик — Майкл Стоунбрейкер), что легло в основу нового продукта.

Выпуск Informix Universal Server состоялся в декабре 1996 года. Система была ориентирована на рынки телекоммуникаций, финансов, геоинформационных систем (ГИС) и управления контентом. В 2001 году, после финансовых трудностей Informix Software, права на технологии и продукт перешли корпорации IBM, которая продолжила развитие СУБД под названием IBM Informix Dynamic Server (IDS), интегрировав ряд функций IUS в свою платформу.

Архитектура и ключевые особенности

Гибридная объектно-реляционная модель

Основой Informix Universal Server было расширение реляционной модели за счёт концепции DataBlade — модульных расширений, которые позволяли добавлять в базу данных пользовательские типы, операторы, функции и индексы. DataBlade разрабатывались как сторонними компаниями, так и самой Informix. Каждый DataBlade реализовывал поддержку определённого класса данных:

Такая архитектура делала IUS одной из первых систем, позволяющих хранить «сложные» объекты непосредственно в базе данных без необходимости выделять отдельные файловые хранилища.

Поддержка транзакций и параллелизм

IUS поддерживал все основные свойства ACID (атомарность, согласованность, изолированность, долговечность) и использовал многопоточную архитектуру на стороне сервера. Это позволяло обрабатывать большое количество одновременных запросов без значительной деградации производительности. Система поддерживала как блокировки на уровне строк, так и многоверсионное управление одновременным доступом (MVCC).

Язык запросов и расширения

В качестве языка запросов использовался стандартный SQL с расширениями для объектно-реляционной модели. Пользовательские типы данных могли быть использованы в SQL-запросах так же, как и встроенные типы (INTEGER, CHAR, DATE). Например, можно было определить новый тип GeoPoint и написать запрос: SELECT * FROM cities WHERE location WITHIN (buffer(requested_point, 10 km)).

Дополнительно поддерживался язык SPL (Stored Procedure Language) для создания хранимых процедур и триггеров.

Версии и развитие

Informix Universal Server выпускался в нескольких редакциях, отличавшихся функциональностью и целевой нагрузкой:

После перехода к IBM в 2001 году развитие IUS прекратилось, однако его ключевые технологии (DataBlade, пространственные расширения и поддержка временных рядов) были интегрированы в IBM Informix Dynamic Server (IDS) версии 7.3 и выше. В настоящее время (2025 год) IBM продолжает поддерживать и развивать Informix IDS, который включает модули, унаследованные от IUS.

Применение

Informix Universal Server нашёл применение в следующих областях:

Сравнение с аналогами

В момент выхода Informix Universal Server конкурировал с такими системами, как Oracle8 (реализовавшая объектно-реляционные возможности в 1997 году), IBM DB2 Universal Database (с поддержкой расширенных типов через Extenders) и Microsoft SQL Server 6.5 (на тот момент преимущественно реляционная). Ключевым отличием IUS была модульная архитектура DataBlade, которая позволяла гибко наращивать функциональность без изменения ядра СУБД. Однако отсутствие широкой поддержки со стороны сообщества разработчиков и высокая сложность администрирования ограничили её распространение по сравнению с решениями Oracle и Microsoft.

Критика и ограничения

Несмотря на инновационность, Informix Universal Server имел ряд недостатков:

Наследие

Informix Universal Server является важной вехой в истории СУБД, так как продемонстрировал возможность практического объединения реляционной модели с объектно-ориентированной парадигмой. Многие идеи, заложенные в IUS (модульные расширения, пользовательские типы данных и индексы), впоследствии были реализованы в других базах данных, включая PostgreSQL (с механизмом extension) и Oracle (с объектными типами). Технологии DataBlade используются в некоторых современных решениях IBM Informix и остаются актуальными для специфических классов данных (например, пространственных и временных рядов).

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →