Database Programming & Design

       

Проблемы моделирования


На сегодня ОРСУБД добились наибольшего успеха в областях

управления мультимедийными объектами и сложными данными, такими

как геопространственные данные и временные ряды финансовых

приложений. Системы часто используются в Web-приложениях и

специализированных складах данных (datawarehouses). Развитые

Web-приложения демонстрируют преимущества возможностей ОРСУБД по

интегрированному управлению мультимедиа, традиционными

структурированными данными и шаблонами для динамической генерации

страниц.

Мультимедийные включают аудио, видео, графику и форматированный и

неформатированный текст. Структуры данных сами по себе не очень

интересны; для ОРСУБД, если не принимать во внимание определенные

методы доступа, все они вкладываются в однотипные большие двоичные

объекты (BLOBs - Binary Large Objects). Более интересна новая

возможность создания серверных функций для индексирования, поиска

и обработки хранимых мультимедийных данных. Например, Web



DataBlade Informix включает не только набор структур данных

(шаблонов) для мультимедийных страниц приложения, но также и

функции для обработки SQL-запросов, переменных и процедурных

тегов, встроенных в HTML. Страницы приложения сохраняются с

применением непрозрачного UDT с именем html, у которого имеются

методы для управления и обработки страниц. Исходный тип - это

просто текст; интересны именно методы.

Временные ряды - упорядоченные массивы значений, индексируемые по

времени, являются представительным примером сложного типа данных.

Во всех основных ОРСУБД имеется (или будет иметься) один или

более Cartridge, Datablade или Extender для работы с временными

рядами. Можно также построить и свои собственные структуры и

методы, поддерживающие временные ряды. Независимо от источника

тип временных рядов должен иметь имя и другие описательные поля,

а также один или более векторов значений, индексирующих данные.

Значения серий более недоступны через нерасширенный SQL; для

извлечения и обработки значений и рядов целиком обычно нужны

функции и операции, например, функция GETVALUE с параметрами

SERIESNAME и DATE. Можно было бы перегрузить операцию PLUS для

сложения серии со скалярным значением и для сложения значений

двух серий.

Эти примеры показывают, что при использовании

объектно-реляционного подхода моделируются и данные, и процессы:

какой информацией мы располагаем и что собираемся с ней делать. В

реляционных же базах данных поддерживается лишь ограниченная

инкапсуляция операций и процессов. Очевидно, что методологии и

средства проектирования теперь должны моделировать и данные, и

операции. Кроме того, эти средства должны давать возможность

работы со встроенными типами и методами и расширять модель

определенными пользователями типами и функциями и модулями

Cartridge, DataBlade и Extender.



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