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


Следствия модели параллельности - часть 2


Поскольку все блокировки устанавливаются на уровне объектов, накладные расходы на управление блокировками могут быть выше, чем в архитектуре, основанной на страницах. Так что трешинг может проявляться в обеих архитектурах.

«В большинстве случаев архитектура, основанная на объектах, лучше всего подходит при большом числе одновременно работающих пользователей и/или процессов, особенно в системах, которые не могут быть хорошо сегментированы для изоляции.»

Здесь Грин не упоминает о том, что в сервер-ориентированных системах, таких как Versant, по мере возрастания числа пользователей могут быстро проявиться проблемы масштабируемости, поскольку большая часть обработки должна производиться на сервере. В клиент-ориентированной архитектуре, где основная алгоритмическая обработка имеет место на стороне клиента, нагрузка распределяется по всем клиентским машинам, практически устраняя узкое место сервера. Моя точка зрения состоит в том, что преимущества каждой из архитектур будут сильно зависеть от контекста, от того, какие сценарии использования реализуются в приложениях, и от деталей динамического поведения конкретной системы. Грин чрезмерно упрощает суть проблемы.

Для обеспечения масштабируемости может потребоваться осведомленность о характеристиках производительности аппаратуры магнитных дисков, независимо от того, являются ли единицами блокировки объекты или страницы. Предположение, что случайный доступ к данным обеспечивается за то же время, что и случайный доступ, перестает работать, когда база данных достигает таких размеров, что перестает помещаться в основной памяти. Поэтому, вне зависимости от того, какая архитектура ООСУБД используется, для достижения удовлетворительной производительности приложению может потребоваться осведомленность о размещении объектов.




Начало  Назад  Вперед



Книжный магазин