Архитектуры ООСУБД. Анализ реализаций

Ответ на комментарии раздела «Реализация


Что касается комментария Мариотта по поводу выполнения запросов в ООСУБД с архитектурой, основанной на страницах, я согласен, что в процитированном автором утверждении не учитывалась возможность индексации, и это является моим упущением. Наверное, следовало бы переформулировать это утверждение, добавив следующее: «При наличии индексации требуется загрузить по сети все страницы индекса, а после выполнения запроса и определения его результатов нужно загрузить по сети все не загруженные ранее страницы, которые содержат результат, чтобы обеспечить доступ к объектам из результирующего набора. Это приведет к пересылке по сети многих объектов, которые в действительности не удовлетворяют условию запроса.» И вопреки утверждению Мариотта я знаю, что в ObjectStore используются индексы, поскольку говорил в подразделе «Следствия модели запросов» о проблемах поддержки индексов в архитектуре, основанной на страницах, считая наличие этих проблем недостатком архитектуры. Судя по комментариям Мариотта, кажется, что он, должно быть, не заметил этого подраздела.

Дальше Мариотт пишет: «Однако следует сравнить это с сервер-ориентированной архитектурой, где все запросы должны выполняться на серверной машине, имеется ограниченная возможность распределения этих запросов и использования истинного параллелизма нескольких машин, когда это имеет смысл.» Конечно, я уже указывал на то, что в этой области Versant не демонстрирует те же характеристики, что реляционные СУБД, но, кроме того, важно заметить, что при выполнении на разных машинах ООСУБД Versant обладает всеми возможностями для работы со многими физическими базами данных как с единой логической сущностью, запросы к которой могут выполняться в параллель. Так что, по-видимому, к этому нельзя относиться как к небольшой опции. Я решусь предположить, что Мариотт просто не знаком с особенностями ООСУБД Versant. Позже в этой статье я вернусь к этой возможности.



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