101
правка
Изменения
Новая страница: «==Набор требований к распределенным базам данных, которых хотят достигнуть== ===Требовани…»
==Набор требований к распределенным базам данных, которых хотят достигнуть==
===Требования по децентрализации===
*Локальная независимость - узел должен функционировать даже в изоляции
(имеется в виду отвечать как на запросы на чтение, так и на изменение).*
*Отсутствие центрального узла, так как при его наличии и отключении не выполнится локальная независимость.*
*Непрерывное функционирование, то есть надежность и доступность.*
===Требования по прозрачности===
*Независимость от расположения
а) Программы могут работать на любом узле (данные действительно хранятся распределенно в отличие от репликации);
б) Удаленный доступ к данным (должны уметь сделать любой запрос на любом узле);
Распределенная БД должна логически себя вести как одна большая БД.*
===Независимость от фрагментации===
*Программы не знают на каком узле находятся данные.*
*Унифицированный доступ к данным.*
*Географическое секционирование.*
===Независимость от репликации===
*Автоматическая поддержка репликации.*
*Выбор узла для обновления.*
===Распределенные транзакции===
*Поддержка распределенных запросов.
а) Один запрос получает данные с разных узлов;
б) Несколько узлов могут участвовать в одной транзакции;
в) Должна быть согласованность фиксаций и отката.*
*Независимость от окружения.
а) От аппаратуры, то есть должны быть унифицированное представление данных;
б) От ОС, то есть должна быть конвертация данных и поддержка разных ОС;
в) От сети, например, в дата центрах будет быстрая локальная связь;
г) От типа СУБД, хотелось бы уметь делать распределенную БД, которая обслуживается разными системами управления БД (Oracle, Postgres, etc). Но в реальности все очень печально.*
===Требования по децентрализации===
*Локальная независимость - узел должен функционировать даже в изоляции
(имеется в виду отвечать как на запросы на чтение, так и на изменение).*
*Отсутствие центрального узла, так как при его наличии и отключении не выполнится локальная независимость.*
*Непрерывное функционирование, то есть надежность и доступность.*
===Требования по прозрачности===
*Независимость от расположения
а) Программы могут работать на любом узле (данные действительно хранятся распределенно в отличие от репликации);
б) Удаленный доступ к данным (должны уметь сделать любой запрос на любом узле);
Распределенная БД должна логически себя вести как одна большая БД.*
===Независимость от фрагментации===
*Программы не знают на каком узле находятся данные.*
*Унифицированный доступ к данным.*
*Географическое секционирование.*
===Независимость от репликации===
*Автоматическая поддержка репликации.*
*Выбор узла для обновления.*
===Распределенные транзакции===
*Поддержка распределенных запросов.
а) Один запрос получает данные с разных узлов;
б) Несколько узлов могут участвовать в одной транзакции;
в) Должна быть согласованность фиксаций и отката.*
*Независимость от окружения.
а) От аппаратуры, то есть должны быть унифицированное представление данных;
б) От ОС, то есть должна быть конвертация данных и поддержка разных ОС;
в) От сети, например, в дата центрах будет быстрая локальная связь;
г) От типа СУБД, хотелось бы уметь делать распределенную БД, которая обслуживается разными системами управления БД (Oracle, Postgres, etc). Но в реальности все очень печально.*