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

       

Гибридная согласованность


В общем случае мелкозернистые блокировки или проверки согласованности обеспечивают более высокий уровень параллельности. Однако в системах объектно-ориентированных баз данных, в которых поддерживаются и оптимистический, и пессимистический механизмы, можно разрабатывать приложения, пользующиеся преимуществами обоих механизмов. Один из подходов состоит в том, что определяются специальные операции, которые должны удаваться (не должны подвергаться откату и повторному выполнению), и используются "сторожевые объекты" ("guardian objects") для управления их доступов к группе объектов. Тогда для операций, которые должны удаваться, используются пессимистические средства системы баз данных для запросов/освобождения блокировок на сторожевых объектах, что гарантирует их успешное выполнение. Одним из основных преимуществ подхода "сторожевых объектов" является существенное сокращение объектов, на которых требуется получать блокировки, что уменьшает число комбинаций блокировок, которые требуется анализировать для предотвращения тупиков. Вообще говоря, может возрасти пропускная способность, поскольку строго сериализуются механизмом блокировок только транзакции, которым требуется блокировать эти группы объектов, а другие оптимистические транзакции могут выполняться беспрепятственно.



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