1999 г
Bulletin of the Technical Committee on
Data Engineering
December 1998, Vol. 21, No. 4 | IEEE Computer Society |
Темой декабрьского номера журнала является репликация данных. В тематическом блоке пять статей.
Quorum Systems in Replicated Databases: Science or Fiction?
The Case for Non-transparent Replication: Examples from Bayou
Issues in Web Content Replication
Consensus-Based Management of Distributed and Replicated Data
Replication Strategies for High Availability and Disaster Recovery
Quorum Systems in Replicated Databases:
Science or Fiction?
Avishai Wool
Bell Labs, Lucent Technologies
Murray Hill, New Jersey, USA
yash@acm.org
http://www.bell-labs.com/~yash
Кворумная система (quorum system) представляет собой коллекцию поднаборов серверов (кворумов) таких, что каждые два поднабора включают хотя бы один общий сервер. Этот механизм был разработан в конце 70-х - начале 80-х годов для управления конкурентным доступом к реплицированным базам данных. Схема репликации в кворумных системах в общих чертах работает следующим образом. Элементы данных помечаются временными метками и размещаются в некотором кворуме серверов. Для чтения данных производится обращение к их копиям, хранящимся на некотором (возможно, другом) кворуме серверов, и используется значение с наибольшим значением временной метки. Условие наличия общего сервера для любых двух кворумов гарантирует, что по крайней мере один сервер отследит обе операции, поэтому читатель получит наиболее свежее по времени значение. В совокупности с поддержанием стандартных двухфазных протоколов этот подход обеспечивает строгую согласованность данных и глобальную сериализацию транзакций.
В прошлом подход кворумных систем привлекал исследователей баз данных главным образом тем, что предлагал децентрализованное решение проблемы устойчивости к сбоям. В частности, можно поддерживать согласованное состояние кворумных распределенных баз данных даже при нарушении связности сети или авариях серверов. Наиболее желательным свойством кворумных систем была возможность достижения высокого уровня доступности.
Несмотря на эти и другие полезные свойства подход кворумных систем не используется в широких масштабах в коммерческих реплицированных базах данных. Как правило, используются упрощенные решения, которые гарантируют сериализуемость только в частных случаях. В статье прежде всего обсуждаются основные причины, по которым коммерческие компании не захотели использовать кворумные системы, и то, насколько соответствующие доводы законны в сегодняшних изменившихся условиях. Далее ситуация в области баз данных сравнивается с ситуацией в других областях, в которых кворумные системы успешно применяются. Автор полагает, что следовало бы сместить акцент с устойчивости к сбоям на возможности повышения общей производительности за счет балансировки загрузки. В заключение отмечается ряд приложений, которые могли бы получить преимущество от использования реплицированных кворумных баз данных.
The Case for Non-transparent Replication: Examples from Bayou
Douglas B. Terry Karin Petersen Mike J. Spreitzer Marvin M. Theimer
Computer Science Laboratory
Xerox Palo Alto Research Center
Palo Alto, CA 94304 USA
Основной задачей, стоящей перед проектировщиками реплицированных систем хранения данных, является обеспечение разработчиков приложений некоторыми возможностями управления процессом репликации без потребности учета аспектов репликации общих для всех приложений. Системы, гарантирующие полную идентичность всех копий данных ("one-copy equivalence"), получили распространение по той причине, что они облегчают разработку приложений. В частности, "прозрачность репликации" позволяет без переделки переносить приложения, разработанные в расчете на централизованную систему файлов или баз данных, в среду строго согласованной реплицированной системы хранения. Однако реплицированные системы, гарантирующие строгую согласованность, требуют наличия дополнительных механизмов управления параллельным доступом и распределенными транзакциями и поэтому подходят не для всех приложений и операционных сред. Для обеспечения требуемого уровня доступности данных, масштабируемости и эффективности приложений во многих реплицированных системах хранения используются ослабленные модели согласованности копий. В этом случае разработка приложений усложняется, поскольку приходится иметь дело с рассогласованными в разной степени репликами, отслеживать распространение изменений и управлять конфликтующими обновлениями копий.
Система Bayou, созданная в компании Xerox PARC, является примером реплицированной системы хранения, позволяющей балансировать нагрузку на приложение в зависимости от его специфики. В статье описываются свойства Bayou, независимые от приложений и привязанные к ним. Основной идеей является разделение обязанностей между приложением и используемых им менеджеров данных. Для иллюстрации используются два приложения Bayou - Calender Manager (BCM) и Mail Reader (BXMH). BCM позволяет хранить информацию о собраниях и других мероприятиях отдельным лицам и группам, а также расписания использования помещений. Календарь пользователя может реплицироваться в любом числе мест, так что к нему можно иметь доступ и с рабочей станции в офисе, и с ноутбука во время путешествий. BXMH получает приходящие пользователю почтовые сообщения, дает возможность их чтения и позволяет постоянно хранить сообщения в разных папках. Почтовая база данных BCMH, управляемая Bayou, может реплицироваться в ряде узлов для повышения уровня доступности и облегчения доступа. Каждое из двух приложений для управления реплицированными данными взаимодействует с Bayou своим способом. Это показывает потребность в наличии гибкого интерфейса прикладного программирования к системам реплицированного хранения.
Issues in Web Content Replication
Michael Rabinovich
AT&T Labs
180 Park Avenue
Florham Park, NJ 07932
misha@research.att.com
В связи с продолжением роста коммерческих интересов к Internet возрастает значимость аспектов масштабируемости и эффективности. По информации UUNET сетевой трафик увеличивается вдвое каждые 100 дней. Тенденция к замене медленных модемов, ограничивающих сетевой трафик, на линии ISDN или кабельные модемы может привести к еще большему увеличению трафика, с которым могут не справиться даже самые современные технологии передачи данных. Поэтому внимание промышленных и академических кругов привлекают вопросы кэширования и репликации информации в Internet. В статье обсуждаются вопросы репликации в Internet и обозреваются основные направления соответствующих исследований.
В настоящее время в Internet распространена статическая репликация содержимого Web-сайтов, называемая на жаргоне Internet-сообщества зеркалированием. При возрастании числа узлов Internet, содержащих Web-сайты, до миллионов пространство принятия решений для реплик становится громадным и неуправляемым. Требуется динамическая автоматизированная репликация. В связи с этим имеются две фундаментальные проблемы: выбор сервера, которому следует доставить запрос к реплике; принятие решений о числе и месте расположения реплик всех информационных объектов. Эти проблемы часто изучаются по отдельности, однако на самом деле они взаимосвязаны и должны изучаться совместно в связи с динамической репликацией Internet.
Consensus-Based Management of Distributed and Replicated Data
Michel Raynal
IRISA, Campus de Beaulie
35 042 Rennes-cedex, France
raynal@irisa.fr
Географически распределенные информационные системы или системы с непредсказуемой загрузкой являются по своей природе асинхронными. Это означает, что в таких системах невозможно полагаться на верхнюю границу задержек при передаче сообщений или планировании процессов. Для надежного использования механизма таймаутов требуется возможность получать общесистемного глобального значения таймера. Ситуация еще более усложняется возможностью возникновения сбоев процессов, входящих в состав системы. В связи с потребностью получения каждым процессом системы ее согласованного состояния была сформулирована проблема консенсуса, которая в общем виде формулируется следующим образом: каждый входящий в систему процесс pi предлагает другим процессам значение vi, и все процессы должны на основе этого набора значений принять решение о некотором значении v, которое полагается соответствующим текущему состоянию системы. Частными проявлениями проблемы консенсуса являются проблемы неблокируемой атомарной фиксации (Non-Blocking Atomic Commitment - NBAC) и атомарного широковещания (Atomic Broadcast - AB), имеющие важное практическое значение в контексте управления распределенными/реплицированными данными.
На основе анализа сути проблем и полученных к настоящему времени результатов автор статьи приходит к следующим выводам:
- Проблема консенсуса не имеет решения в асинхронных распределенных системах даже при том условии, что отсутствует восстановление аварийно завершившихся процессов.
- Проблемы NBAC и AB могут быть решены в некоторой системе только в том случае, если в ней решена проблема консенсуса.
- Глубокое изучение проблемы консенсуса, в частности, изучение предположений, в которых она может быть решена, поможет проектировщикам распределенных/реплицированных систем при решении их конкретных проблем.
Replication Strategies for High Availability and Disaster Recovery
Robert Breton
Director
Sybase Replication Server Engineering
В статье очень кратко описывается эволюция Sybase Replication Server от момента его появления до настоящего времени. Первый вариант Replication Server появился в 1993 г. и был основан на модели публикации и подписки (publish and subscribe). В дальнейшем специалисты Sybase обратили внимание, что многие заказчики находят дополнительные преимущества в реплицировании для зеркалированных баз данных. Для них менее важна возможность репликации по подписке. Поэтому в Replication Server 11 появился новый механизм, называемый "теплым резервированием" (Warm Standby), обеспечивающий репликацию без публикации и подписки. В версии 11.5 в механизм теплого резервирования были внесены дополнительные возможности, облегчающие администрирование баз данных. В заключение обсуждаются аппаратные и программные альтернативы достижения высокой доступности данных, а также обсуждаются достоинства и недостатки теплого резервирования.