Рационализация согласованности в облаках

       

Категория A – сериализуемость


Для данных категории A обеспечивается сериализуемость (serializability) в традиционном транзакционном смысле. Данные этой категории всегда остаются согласованными, и все транзакции, модифицирующие данные категории A, являются изолированными. В "облачной" среде хранения данных поддержка сериализуемости требует существенных денежных затрат и приводит к падению производительности. Эти накладные расходы стоимости и производительности возникают из-за того, что в сильно распределенных средах для поддержки сериализуемости требуются более сложные протоколы . Эти протоколы предусматривают большее число взаимодействий с дополнительными службами (например, службами блокировок и выполнения запросов), что приводит к повышению стоимости и падению производительности (увеличению времени ответа) по сравнению системами, работающими на уровне сессионной согласованности.

Данные следует относить к категории A, если их согласованность и актуальность являются обязательными. Мы обеспечиваем сериализуемость на основе использования пессимистического протокола (протокола двухфазных блокировок, 2PL). Мы выбрали сериализацию, а не, например, изоляцию на основе мгновенных снимков, чтобы транзакции всегда видели последнее по времени состояние базы данных.



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