Классика баз данных - статьи

       

объекты могут иметь существенно более


запроса, алгоритмы выполнения элементарных реляционных операций,

методы оценок стоимости планов запросов.

Конечно, объекты могут иметь существенно более сложную структуру,

чем кортежи плоских отношений, но не это различие является

наиболее важным. Основная сложность оптимизации запросов к ООБД

следует из того, что в этом случае условия выборки формулируются

в терминах "внешних" атрибутов объектов (методов), а для реальной

оптимизации (т.е. для выработки оптимального плана) требуются

условия, определенные на "внутренних" атрибутах (переменных

состояния).

На самом деле, похожая ситуация существует и в РСУБД, при

оптимизации запроса над представлением БД. В этом случае условия

также формулируются в терминах внешних атрибутов (атрибутов

представления), и в целях оптимизации запроса эти условия должны

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

отношений. Хорошо известным методом такой "предоптимизации"

является подстановка представлений , которая часто (хотя и не

всегда в случае использования языка SQL) обеспечивает требуемые

преобразования. Альтернативным способом выполнения запроса на

представлением (иногда единственным возможным) является

материализация представления.

В системах ООБД ситуация существенно усложняется двумя

обстоятельствами. Во-первых, методы обычно программируются на

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

параметры. Т.е. в общем случае тело метода представляет из себя

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

атрибутов представления, а параметризованную программу,

включающую ветвления, вызовы функций и методов других объектов.

Вторая сложность связана с возможным и распространенным в ООП

позднем связывании: точная реализация метода и даже структура

объекта может быть неизвестна во время компиляции запроса.

Одним из подходов к упрощению проблемы является открытие

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

атрибутов объектов .

Содержание  Назад  Вперед