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

Ответ на комментарии к разделу «Следствия модели запросов»


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

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

Кажется, я действительно был не прав, утверждая, что НЕТ НИКАКОЙ ВОЗМОЖНОСТИ доступа к объектам, не содержащимся в коллекциях, над которыми можно выполнять запросы. Правильнее было бы сказать, что, как кажется, в ObjectStore можно загрузить в клиента все объекты некоторого класса и последовательно сканировать их, пока не найдутся искомые объекты. Однако в практической, а не теоретической реальности, несмотря на наличие «возможностей», описанных Мариоттом в этом разделе, если попытаться инсталлировать сегодняшнюю реализацию архитектуры, основанную на страницах, и сразу воспользоваться ею, вы не сможете выполнять запросы на стороне сервера, поскольку для этого придется загрузить в клиентов много сторонней информации.

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