Сложные типы данных
UDB v.5 содержит встроенную поддержку контекстного поиска в
тексте; графических, аудио, видео и других типов данных;
временных рядов; пространственных типов данных и т.д. Имеется
возможность адресовать один оператор SQL как к традиционным типам
данных, так и сложным данным. Потребители или разработчики
сторонних компаний могут определять дополнительные типы данных
("расширители" - "extenders"), используя инструментальные
средства, поступающие вместе с UDB.
Сложные данные в Oracle8 поддерживаются механизмом "катриджей
данных" ("Data Catridges). Хотя в предыдущих версиях Oracle
поддерживались текстовые, графические, видео и пространственные
типы данных, эта поддержка не была настолько интегрированной, как
в DB2. Для "слабого связывания" ("loosely couple") катриджей
данных был выбран подход брокеров объектных заявок (Object
Request Broker - ORB). Если подход IBM ориентирован на
обеспечение большей производительности, то подход Oracle
облегчает включение расширений в систему и их отключение от
системы. Обе компании работают с независимыми производителями
программного обеспечения (Indepedent Software Vendors - ISV), и в
обоих продуктах обеспечивается связь с внешними данными.
Oracle использует более широкое определение объектно-реляционного
подхода, чем IBM. Подход Oracle существенно более
объектно-ориентированный, в то время как IBM сосредотачивается на
поддержке объектно-реляционных данных. Тем не менее, по словам
специалистов компании Oracle, планируемая полная поддержка
наследования и полиморфизма отложена до выпуска версии 8.2.
IBM дает пользователям возможность создания собственных
расширителей с использованием инструментального набора
разработчика (Software Developer's Kit - SDK), содержащие
средства генерации и регистрации определенных пользователями
типов данных и функций, написанных на языках Java, Basic, Cobol и
Си/Си++. Компания Oracle планировала обеспечить аналогичные
возможности в своем проекте Sedona, целью которого являлось
создание среды разработки и сборки компонентов сетевой
компьютерной архитектуры и картриджей. В настоящее время проект
Sedona не обсуждается, но следует заметить, что картриджи данных
могут создаваться с использованием Java, JavaScript, Си/Си++,
Visual Basic, а также языков, основанных на SQL, и средств
Developer/2000.