- •Базы Данных
- •1.Понятие банка данных. Компоненты банков данных и их краткая характеристика
- •2.Языковые средства субд
- •3.Классификация баз данных
- •4.Этапы проектирования баз данных
- •Тсп для даталогического проектирования
- •Тсп для физического проектирования
- •5.Инфологическое (концептуальное) моделирование
- •7.Case -средства проектирования бд
- •9.Реляционные модели. Основные понятия
- •10.Реляционные модели. Нормальные формы отношений
- •5Nf. Декомпозиция без потерь
- •11.Реляционные модели. Нормализация отношений
- •12.Реляционные алгебры
- •13.Факторы, влияющие на проектирование баз данных
- •1. Специфика предметной области:
- •2. Особенности требуемой обработки информации:
- •3. Характеристика пользователей системы:
- •14.Алгоритм перехода от er-модели к реляционной модели данных
- •15.Ограничения целостности. Понятие и классификация
- •16.Возможности задания ограничений целостности в современных субд
- •17.Языки запросов. Понятие. Классификация
- •18.Классификация запросов. Особенности реализации запросов разных классов
- •19.Табличные языки запросов. Общая характеристика
- •20.Язык sql. Общая характеристика
- •21.Общая структура команды Select языка sql. Корректировка данных в sql
- •22.Sql. Создание объектов
- •23.Sql. Встроенный join
- •24.Sql. Понятие курсора. Использование курсоров
- •25.Sql. Группировка данных. Использование обобщающих функций
- •26.Sql. Создание и использование представлений
- •27.Генераторы экранных форм. Назначение. Классификация
- •28.Генераторы отчетов. Назначение. Классификация
- •29.Классификация распределенных банков данных
- •30.Проблемы обеспечения целостности в распределенных бд
- •31.Сравнение централизованных и распределенных систем
- •32.Распределенные бд. Технологии файл-сервер и клиент-сервер
- •33.Распределенные базы данных. Технология тиражирования
- •34.Проблемы, возникающие при параллельном доступе, и пути их решения
30.Проблемы обеспечения целостности в распределенных бд
Распределённая база данных (РБД) — совокупность логически взаимосвязанных баз данных, распределённых в компьютерной сети.
Распределенная база данных (РБД) - система логически интегрированных и территориально распределенных БД, языковых, программных, технических и организационных средств, предназначенных для создания, ведения и обработки информации. Это означает, что информация физически хранится на разных ЭВМ, связанных сетью передачи данных.
Целостность базы данных (database integrity) — соответствие имеющейся в базе данных информации её внутренней логике, структуре и всем явно заданным правилам. Каждое правило, налагающее некоторое ограничение на возможное состояние базы данных, называется ограничением целостности (integrity constraint).
Проблемы обеспечения ограничений целостности распределенной БД.
Аспекты, присущие любым БД:
Возможность одновременного доступа нескольких пользователей к одной и той же информации (особенно если эти обращения к БД - корректирующие).
Физический разброс отдельных частей БД по разным компьютерам.
Разнотипность источников информации.
Первая проблема имеет место в любых РБнД, вторая - если база данных является распределенной, третья - если система является гетерогенной (реализованной на разнородных элементах.).
В РБнД: опасность искажения данных при их одновременной корректировке разными пользователями. В зависимости от способа организации БД проблема приобретает специфические черты, обусловленные используемой технологией обработки данных: в распределенной базе данных отдельные части не дублируют друг друга.
Возможны разные схемы обеспечения целостности данных при выполнении корректирующих обращений в многопользовательском режиме:
запрещение корректировки информации, если ее корректирует другой пользователь (блокировка);
корректировка разных копий информационных единиц и последующее устранение возникающих коллизий.
Факторы, влияющие на выбор выбора способа обеспечения целостности при многопользовательских обращениях (если СУБД предоставляет такую возможность):
степень конкуренции при выполнении корректирующих обращений - насколько часто возникает ситуация одновременной корректировки одной и той же информационной единицы;
ограничения на время реакции системы,
требования к актуальности и непротиворечивости данных в каждый момент времени;
характеристика технических средств.
Проблема распределения данных и, как следствие, распределения процедур их обработки, т.е. это проблемы, обусловленные именно разнесением данных на разные узлы системы.
Существует два подхода к обеспечению целостности в распределенных ИС:
Строгая целостность (tight consistency). Гарантирует целостность данных в любой момент времени, например, с помощью двухфазного протокола фиксаций (2РС). Обеспечение строгой целостности требует высокого качества коммуникаций, поскольку все узлы должны быть постоянно доступны.
Нестрогая целостность (loose consistency). Допускает наличие временной задержки между внесением изменений в публикуемую базу и их отражением на узлах подписчиков.
Протокол двухфазной фиксации транзакции состоит в последовательном прохождении базы данных в процессе выполнения транзакции через два этапа. Первый этап (первая фаза) - выполнение синхронизированного захвата всех объектов данных, к которым имело место обращение от имени транзакции. Объекты данных захватываются на всех серверах. На втором этапе (во второй фазе) либо происходят все изменения на всех серверах, либо, в случае хотя бы одной ошибки, происходит откат к состоянию, в котором находилась база данных до выполнения первого этапа.
Механизм двухфазной фиксации транзакции имеет ряд недостатков:
захват всех необходимых данных на всех серверах может надолго заблокировать доступ к данным;
велика вероятность отказа от обновления из-за какой-нибудь, пусть единичной, ошибки;
если какой-либо сервер или выход в глобальную сеть окажется недоступным, произойдет потеря транзакции;
использование в структуре сети координирующего узла связано с дополнительной опасностью, поскольку выход его из строя приведет к блокировке данных, затронутых транзакцией, до тех пор, пока он не будет восстановлен;
сложность обработки транзакции при использовании этого протокола сама служит источником дополнительного трафика, что увеличивает время реакции системы.
Кроме того, недостаточная пропускная способность сети и малая скорость передачи данных могут увеличить время реакции до недопустимого уровня.
Разные СУБД поддерживают разные технологии обеспечения целостности.