7.2.1. Технологии постоянного дублирования
Ядром любой ИС является аппаратная часть, системное программное обеспечение (ОС), система управления базами данных (СУБД) и прикладное программное обеспечение. Соответственно, и постоянное дублирование может производиться на уровне аппаратуры, на уровне ОС, на уровне СУБД и на уровне прикладной системы. Уровень прикладной системы рассматриваться далее не будет.
Постоянное дублирование информации может быть реализовано с помощью дисковых RAID-массивов, которые представляют собой набор жестких дисков и специальную аппаратуру управления этими дисками. Существует несколько типов RAID-массивов, некоторые из которых умеют внутри себя дублировать записываемые данные. Использование таких устройств очень популярно, так как обеспечивается очень надежный механизм хранения при невысоких накладных расходах. Недостатком такого подхода является то, что дублируется только одна часть аппаратуры - диски, а компьютер, использующий RAID-массив не задублирован. В результате, если выйдет из строя компьютер, система сможет быть заново введена в действие только после замены или ремонта компьютера.
Полное дублирование компьютера (это позволяют, например, кластеры) обеспечивает существенно большую надежность, нежели дублирование только дисков. Однако, такое решение требует специальной дополнительной (и дорогостоящей!) аппаратуры, а также специальных расширений ОС. Не всякая аппаратура и не всякая ОС позволяют реализовать схему с дублирующим компьютером. Именно стоимость является главным сдерживающим фактором в широком распространении этого решения.
Как правило, хранение данных в ИС обеспечивает СУБД. Весьма удобным вариантом обеспечить постоянное дублирование содержательных данных явяляется дублирование содержимого баз данных. Informix Dynamic Server поддерживает такое дублирование двумя способами - через установку одного из серверов БД в режим горячего резерва и через репликацию только нужных данных.
Установка одного сервера БД в режим горячего резерва (фирменное название такой конфигурации - HDR, или High-Availability Data Replication - репликация высокой доступности) предполагает наличие двух идентичных компьютеров с идентичными серверами БД. Один из серверов БД (первичный сервер) работает в режиме чтение/запись, второй сервер (вторичный) - только в режиме чтения. Первичный сервер в синхронном или асинхронном режиме передает на вторичный сервер все изменения. За счет того, что сервера идентичны, обеспечивается высокая скорость передачи изменений, легкость настройки и высокая надежность. При выходе первичного сервера из строй, вторичный может взять на себя все его функции. Более того, за счет того, что вторичный сервер может работать в режиме чтения, использование такой конфигурации позволяет повысить общую производительность системы.
Другая методика постоянного дублирования основывается на репликации важных данных. По сравнению с сервером горячего резерва, такая конфигурация более гибкая, так как отсутствует требование идентичности двух серверов. При реплицировании возмождно использовать более двух серверов. Однако и конфигурирование и настройка подобной схемы более трудоемко, нежели сервера горячего резерва. Все же, реплицирование данных, хоть и позволяет решить данную конкретную задачу, ориентировано на другие задачи. Другими словами, использование режима сервера горячей замены для задач дублирования более привлекательно.
- 4.5. Упражнения 67
- Глава 6. Устройство Informix Dynamic Server 165
- Глава 7. Эксплуатация информационных систем 177
- Глава 1 Обзор основных архитектур баз данных
- 1.1. Архитектура на основе разделяемых файлов
- 1.2. Архитектура “Хост-терминал”
- 1.3. Архитектура “Клиент-Сервер”
- 1.4. Архитектура с использованием сервера приложений (трехзвенная архитектура)
- 1.5. Упражнения
- Глава 2 Модели данных
- 2.1. Уровни восприятия данных
- 2.2. Иерархическая модель данных
- 2.3. Сетевая модель данных
- 2.4. Реляционная модель данных
- 2.5. Объектно-реляционная модель данных
- Глава 3 Реализация информационных систем на основе продуктов Informix Software
- 3.1. Обзор продуктов Informix
- 3.2. Варианты построения систем
- Internet/Intranet-конфигурация
- 3.3. Выбор оптимальной конфигурации
- Глава 4 Математические основы реляционных субд
- 4.1. Основные понятия
- 4.2. Ключи
- 4.3. Основные операции над таблицами и их интерпретация
- 4.4. Нормализация
- 4.5. Упражнения
- Глава 5 Язык sql
- 5.1. Типы данных, доступные в sql
- 5.3. Основные sql-операторы для доступа и модификации данных
- 5.4. Управление транзакциями
- 5.5. Продвинутые варианты оператора поиска
- 5.5.1. Поиск по нескольким таблицам
- 5.5.2. Устранение повторения данных в операторе select
- 5.5.3. Вычисления внутри оператора select
- 5.5.4. Логические выражения в условии sql-операторов
- 5.5.5. Слияние двух выборок
- 5.5.6. Сортировка выборки
- 5.5.7. Вставка в таблицу нескольких строк одновременно
- 5.6. Использование sql в языках программирования
- 5.7. Программирование сервера базы данных
- 5.7.1. Динамический sql
- 5.7.3. Хранимые процедуры
- 5.7.4. Триггеры
- 5.8. Ограничители (задание целостности на уровне схемы)
- 5.9. Разграничение в sql прав пользователей
- 5.9.1. Права доступа
- 5.9.2. Права на уровне базы данных
- 5.9.3. Права на таблицы
- 5.9.4. Права на хранимые процедуры
- 5.9.5. Кто и как следит за соблюдением прав
- 5.9.6. Механизм ролей
- 5.9.7. Псевдотаблицы (view)
- 5.9.7. Синонимы
- 5.10. Управление одновременным доступом к данным
- 5.10.1. Что бывает, когда несколько человек одновременно пытаются обновить одни и теже данные
- 5.10.2. Открытие базы данных только для себя
- 5.10.3. Блокирование таблицы
- 5.10.4. Механизм блокирования записей и уровни изоляции
- 5.10.5. Управление ожиданием снятия блокировок
- 5.10.6. Тупиковые ситуации
- 5.11. Повышение скорости обработки запросов.
- 5.11.1. Индексы
- 5.11.2. Буферизация журнала транзакций
- 5.11.3. Блокировка на уровне записей и страниц
- 5.11.4. Эффективное построение запросов
- 5.11.5. Сортировка и поиск по коротким полям. Классификаторы
- 5.12. Объектное расширение sql в Informix ds/Universal Data Option
- 5.12.1. Зачем нужна поддержка объектов в серверах бд?
- 5.12.3. Внедрение объектно-ориентированной технологии
- 5.12.4. Реализация объектного подхода в Informix
- Informix ds/Universal Data Option - объектно-реляционная субд
- 5.12.5. Итак…
- Глава 6. Устройство Informix Dynamic Server
- 6.1. Внутренняя архитектура dsa
- 6.2. Механизм хранения данных
- 6.3. Инсталляция продукта
- 6.4. Запуск и останов сервера
- 6.5. Работа с русским языком
- Глава 7. Эксплуатация информационных систем
- Администрирование серверов баз данных
- 7.2. Обеспечение сохранности данных.
- 7.2.1. Технологии постоянного дублирования
- 7.2.2. Архивация
- 7.2.3. Так как же обеспечить сохранность данных?
- 7.3. Архивирование и восстановление данных
- 7.3.1. Что нужно архивировать
- 7.3.2. Утилиты архивации и восстановления
- 7.3.3. Создание архивов утилитой ontape
- 7.3.4. Восстановление из архивов утилитой ontape
- 7.3.5. Как узнать “когда”?
- 7.3.6. Практические советы
- 7.4. Средства контроля за доступом
- 7.4.1 Как работает аудитинг?
- 7.4.2. Конфигурирование списков протоколируемых событий
- 7.4.3. Задание файлов, запуск и остановка механизма аудитинга
- Анализ протокола
- 7.4.5. Практические советы или Что делать, если вы хотите…
- 7.5. Реагирование на чрезвычайные ситуации
- 7.6. Мониторинг текущего состояния сервера базы данных
- 7.6.1. Кто работает с сервером базы данных
- 7.6.2. Сколько памяти использует сервер бд
- 7.6.3. Сколько свободного места имеется у сервера бд
- 7.7. Достижение требуемой производительности
- 7.7.1. Как узнать, что ждет некоторый запрос
- 7.7.2. Как выяснять причины падения производительности
- 2. Общие принципы предлагаемой технологии
- 3. Как портировать приложение