1 / 33

Черный ящик или зачем нужен FBDataGuard

Черный ящик или зачем нужен FBDataGuard. Еще раз об уверенности в завтрашнем дне. Администратор системы должен проверять множество вещей, чтобы быть уверенным в ее работоспособности. Вот почему мы создали Firebird DataGuard. Наблюдение за базой Предупреждения и советы

rafal
Download Presentation

Черный ящик или зачем нужен FBDataGuard

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Черный ящик или зачем нужен FBDataGuard Еще раз об уверенности в завтрашнем дне

  2. Администратор системы должен проверять множество вещей, чтобы быть уверенным в ее работоспособности

  3. Вот почему мы создалиFirebird DataGuard • Наблюдение за базой • Предупреждения и советы • Автоматизация обслуживания баз данных • Гарантия восстановления в сложных случаях РАНЬШЕ БОРОЛИСЬ С ПОСЛЕДСТВИЯМИ, ПОРА ВЗЯТЬСЯ ЗА ПРИЧИНЫ.

  4. Технические деталиFBDataGuard

  5. Типичная рабочая средаFirebird Это рабочий сервер Это база данных Firebird Здесь хранится еще одна копия бэкапов Это бэкапы

  6. Рассмотрим сервер в деталях Сервер доступен? Рабочие параметры Сколько RAM? Mb # Временные файлы? Записи в логах? 6 уровней проблем Логи Размер логов? Рекомендуемая версия? Баги, проблемы Версия сервера

  7. Сервер Firebird 7 параметров, которые могут сообщать о проблемах с базой данныхи сервером • Доступность сервера • Размер RAM сервера • Количество временных файлов • Размер временных файлов • Записи в логе • Размер логов • Версия сервера

  8. Пример разрешения проблемы с сервером FBDataGuardопределил, что размер файлов сортировки = N Места может не хватить! M – N<X Возможен недостаток свободного места для сортировок, администратор получает alertи рекомендацию увеличить TEMP Размер свободного места на диске с TEMP- файлами = M

  9. Ретроспективный анализ • Все логи хранятся на сервере и позволяют анализировать события, происшедшие в прошлом • Инструментарий для удобного просмотра логов

  10. Рассмотрим базу данных Firebird Обычно базу данных изображают так: База данных как будто это что-то совсем простое.

  11. Профессионалы видят «много деревьев», а не «лес».

  12. Файловая организацияБД delta - Основной файл БД 0-level - Файлы томов БД Файл база данных - Файлы delta (nbackup) и incremental backups Том 1 Том N - Внешние таблицы

  13. Внутренняя организация БД Задачи: • Проверить физическую целостность данных, индексов и метаданных • Проверить логическую целостность • Проверить активность метаданных (статус триггеров, check, хранимых процедур) Метаданные Данные таблиц Индексы Блобы

  14. FBDataGuard бдитза базой данных: • Наблюдает за файлами, томами, дельта-файлами и инкрементальными backups • Верифицирует метаданные, данные и индексы • Следит за ограничениями • ВЫДАЕТ ПРЕДУПРЕЖДЕНИЯ и РЕКОМЕНДАЦИИ

  15. Пример разрешения проблемы с базой данных Firebird Администратор получает alertи рекомендацию проверить индексы non-activatedиндексымогут указывать на повреждения БД, SQL запросымогут «тормозить» FBDataGuardопределил, что после restoreиндекс не активирован Предотвращена потеря производительности!

  16. Катастрофические поломки Серверы (как любые сложные устройства) – ИНОГДА ЛОМАЮТСЯ.

  17. Что может сломаться в железе? • Жесткий диск (HDD) • Flash-накопители • Память (RAM) • Контроллеры SCSCI/SATA и другие подобные устройства Наиболее опасны для базы данных следующие поломки:

  18. Типичные проявления поломок «железа»: • Жесткий диск: • Потерянные и смешанные страницы (wrong page type) • Ошибки в цепочках записей (Cannot find record fragment) • Память: • Ошибки на уровне записей (Wrong record length) • Flash-накопители и Контроллеры • Сдвиги страниц (база не открывается в isql) • Ошибки страниц и ошибки в записей

  19. Как FBDataGuardзащищает от поломок железа? • Во-первых, верификация данных и индексов (выборка данных, пересчет статистики индексов) • Позволяет предупредить о появлении ошибки • Во-вторых – ЗАЩИТНЫЙ РЕПОЗИТОРИЙ МЕТАДАННЫХ • Позволяет спасти данные даже в случае очень тяжелых повреждений

  20. Защитный репозиторий метаданных Метаданные Копия в репозитории Данные таблиц Индексы FBDataGuard сохраняет копию актуальных метаданных в отдельном от БД репозитории Блобы

  21. В случае поломки железа: Метаданные в репозитории FBDataGuard Extractor извлекает все доступные данные из БД и вставляет в новую БД Новая БД Данные таблиц Блобы

  22. В случае поломки железа: Metadata repository FBDataGuard Extractor can extract all good data and insert them into the new database New database Tables Blobs

  23. Последний рубеж защиты • FBDataGuardспасет оставшиеся данные • в случае потери метаданных • Данные из поврежденного delta-файла • В случае поломки жесткого диска, контроллера или flash-накопителя • Вытащит данные даже из «обрывка» БД Но лучше не доводить ситуацию до крайности, не так ли?

  24. Резервное копирование • Мало кто осознает насколько верен простой факт: Резервное копирование – наиболее надежный способ защиты данных

  25. Формально у Firebirdдва способа резервного копирования… • Gbak • последовательное чтение данных с сохранением в линейном формате • Nbackup • Сохранение «слепка» базы данных с перенесением изменений через delta-файл

  26. …но на самом деле есть только один. • Резервное копирование – не вызов gbak –b и nbackup, это ПЛАН ДЕЙСТВИЙ • Он может включать в себя вызовы gbak, nbackup, а также другие технические и организационные процедуры

  27. Правильный gbak • Правильный набор опций при бэкапе ускоряет резервное копирование в несколько раз • Бэкапы должны проверяться на корректность путем тестового восстановления • Существование файлов бэкапов должно контролироваться (резервное копирование в /dev/null – не шутка, а горькая правда жизни) • Должна сохраняться история бэкаповс револьверной заменой резервных копий

  28. Правильный nbackup • Контроль за delta-файлом • Размер delta-файла • Время жизни delta-файла • Контроль целостности копии базы данных • Последовательный gbakс проверкой • Слежение за окружением копии (второй компьютер?)

  29. План резервного копирования (простой вариант) База данных Firebird Копия nbackup Тестовый рестор Gbak-b И на каждом этапе – контроль результатов выполнения.

  30. Примерразрешения аварийной ситуации с бэкапами FBDataGuardвычислил (или взял последнее значение) размера бэкапаM Места может не хватить! M>=N Бэкап отменен, база данных переведена в состояние Critical, администратор получил alert FBDataGuardобнаружил, что свободное место на диске для бэкапов = N Предотвращена поломка backupи потеря данных!

  31. Firebird DataGuard • Наблюдение за 26 важными параметрами базы данных и сервера • Предупреждения о потенциальных и реальных проблемахпо email • Правильная автоматизация обслуживания баз данных • Возможность встраиваться в существующие приложения • Windows, Linux, MacOS, Firebird 1.5-2.1 • FBDataGuardвключает сервисы ремонта и оптимизации базы данных (в зависимости от лицензии)

  32. Вопросы? • support@ibase.ru • +7 495 953 13 34

More Related