Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Отказоустойчивые решения SQL

429 views

Published on

Published in: Education
  • Be the first to comment

  • Be the first to like this

Отказоустойчивые решения SQL

  1. 1. Отказоустойчивые решения SQL
  2. 2. Андрей Коршиков korshikov@sqlpass.org @AndreyKorshikov PASS Regional Mentor for Central Eastern Europe
  3. 3. Факторы, влияющие на доступность Ошибки программного обеспечения Неисправности компонентов оборудования Неполадки сети Пропадание электропитания и природные катаклизмы
  4. 4. Высокая доступность • Индексирование (Indexing) • Online reorganization • Секционирование (Partitions)
  5. 5. Доступ к данным в SQL Server Просмотр строк таблицы  SQL Server считывает все страницы таблицы Индекс  SQL Server использует страницы индекса для поиска строк https://msdn.microsoft.com/en-us/library/ms175049.aspx
  6. 6. Секционирование https://msdn.microsoft.com/en-us/library/ms190787.aspx
  7. 7. Отказоустойчивость • Backup • Service Broker • Log shipping • Replication • Mirroring • Failover clustering • AlwaysOn Availability Groups
  8. 8. Аварийное восстановление (бэкапирование)
  9. 9. Типы резервного копирования SQL Server Тип резервной копии Описание Полная Все файлы данных и часть журнала транзакций Журнал транзакций Любые изменения базы данных, записанные в файлах журнала Заключительные фрагменты журнала Активная часть журнала Разностная Части базы данных, которые изменились с момента выполнения полного резервного копирования базы данных Файл / файловая группа Указанные файлы или файловые группы Частичная Первичная файловая группа, все файловые группы, доступные для чтения и записи, и любые указанные файловые группы, доступные только для чтения Доступная только для копирования База данных или журнал (не оказывается влияния на последовательность резервного копирования)
  10. 10. Модели восстановления Модель восстановления Описание Простая Использует полные или разностные резервные копии базы данных. Усекает журналы транзакций Полная Включает резервные копии как базы данных, так и журнала транзакций С неполным протоколированием Включает резервные копии как базы данных, так и журнала транзакций, но использует меньше пространства журнала для некоторых операций
  11. 11. Стратегия полного резервного копирования базы данных • Полное резервное копирование выполняется, если: • База данных имеет небольшой размер • База данных подвергается незначительным изменениям или доступна только для чтения • Следует периодически очищать журнал транзакций, если используется полная модель восстановления воскресенье понедельник вторник
  12. 12. Стратегия резервного копирования базы данных и журнала транзакций • Следует объединить резервное копирование базы данных и журнала транзакций, если: • База данных часто изменяется • Полное резервное копирование занимает слишком много времени воскресенье понедельник
  13. 13. Стратегия разностного резервного копирования • Разностное резервное копирование следует использовать, если: • База данных часто изменяется • Необходимо сократить время резервного копирования • Резервное копирование журналов транзакций выполняется отдельно понедельник вторник
  14. 14. Стратегия резервного копирования файлов и файловых групп • Файлы или файловые группы следует использовать, если: • База данных имеет большой размер • Полное резервное копирование занимает слишком много времени • Резервное копирование журналов транзакций выполняется отдельно • Возможны сложности с управлением воскресенье понедельник вторник среда Файл данных 1 Файл данных 2 Файл данных 3
  15. 15. Service Broker
  16. 16. Системная архитектура Service Broker Тип объекта Описание Тип сообщений Определяет допустимые сообщения для обмена между службами Контракт Задает тип сообщений и их направление в общении Очередь Хранит сообщения до отправки и после получения как результирующий набор Служба Отражает адресуемую конечную точку для взаимодействия служб Служебная программа Обрабатывает сообщения из очередей и применяет бизнес-логику Служебная программа Контракт ОчередьТип сообщений Служба
  17. 17. Архитектура общения Service Broker Конструкция Описание Сообщение Данные, которыми обмениваются две службы Диалоговое общение Общение, предполагающее отправку и получение сообщений двумя службами Группа сообщений Группа связанных сообщений с уникальным идентификатором Маршрут Сетевой адрес и дополнительное имя службы, используемые для перенаправления сообщений при общении между разными экземплярами SQL Server Привязка удаленной службы Связь между пользователем локальной базы данных и удаленной службой
  18. 18. Служба SubmitExpense Процедура общения Service Broker Контракт ProcessExpense Тип сообщения (Initiator) ExpenseClaim Тип сообщения (Target) ClaimResponse Служба ProcessExpense 7 3Очередь ExpenseQueue Хранимая процедура ExpenseResult сообщение Хранимая процедура SubmitExpense сообщение 2 8 Очередь ExpenseQueue сообщение сообщение 6 Хранимая процедура ProcessExpense 5 4 Сообщение ExpenseClaim Сообщение ClaimResponse 1
  19. 19. Доставка журнала транзакций
  20. 20. Доставка журнала https://technet.microsoft.com/ru-ru/library/ms187103(v=sql.120).aspx
  21. 21. Репликация
  22. 22. Роли сервера в репликации • Издатель • Распространитель • Подписчик Издатель Распространитель Подписчик Подписчик
  23. 23. Типы репликации • Репликация: моментальный снимок • Отправляет все данные • Репликация транзакций • Отправляет изменения данных • Репликация слиянием • Изменение данных как на издателе, так и на подписчиках • Гетерогенная репликация • Репликация данных между SQL Server и другими продуктами для работы с базами данных
  24. 24. Что такое статьи, публикации и подписки • Статьи • Публикации • Подписки
  25. 25. Что такое агенты репликации • Типы агентов репликации • Агент моментальных снимков • Агент чтения журнала • Агент чтения очереди • Агент распространителя • Агент слияния Издатель ПодписчикАгент
  26. 26. Сценарии репликации между сервером и клиентом • Обмен данными с мобильными пользователями • Приложения для работы с покупателями на месте продажи • Интеграция данных с нескольких узлов
  27. 27. HTTP-репликация слиянием Подписчик Брандмауэр IIS Издатель XML через HTTP/HTTPS Двоичный формат через TCP/IP Настройка HTTP-репликации слиянием Создание репликации слиянием Установка и настройка служб IIS Настройка веб-синхронизации Проверка расширения WebSync ISAPI Включение веб-синхронизации Подписка на HTTP-публикацию слиянием Импорт клиентского сертификата для агента слияния Использование веб-синхронизации Подключение к URL-адресу, используемому для веб-синхронизации Интернет
  28. 28. Репликация между одноранговыми серверами Краснодар Москва Тюмень Как работает одноранговая репликация Настройка одноранговой репликации
  29. 29. Публикация Oracle Издатель Oracle Распространитель SQL Server Подписчик Подписчик
  30. 30. Зеркалирование
  31. 31. Что такое зеркальное отображение базы данных? • Альтернатива отказоустойчивой кластеризации • Зеркальный сервер • Является сервером горячей замены • Следящий сервер • Осуществляет мониторинг сервера-источника и сервера зеркальной базы данных • Перенаправление клиента • Автоматическое перенаправление клиента
  32. 32. Параметры настройки зеркального отображения базы данных Режим Автоматический переход на другой ресурс Полная защита от потери данных Высокая доступность Высокая защита Высокоуровневая производительность
  33. 33. Кластеризация
  34. 34. Что такое кластеризация сервера • Виртуальный сервер • Отображается в сети как обычный сервер • Выпуски • Enterprise Edition • Developer Edition • Standard Edition
  35. 35. Подготовка кластера Проверка конфигурации и совместимости: Оборудование Конфигурация кластера Windows Общий диск
  36. 36. Как установить сервер SQL Server в кластере • Виртуальный сервер • Укажите имя виртуального сервера в программе установки SQL Server • Экземпляры • Только один экземпляр SQL Server в каждой группе ресурсов
  37. 37. Always On
  38. 38. AlwaysOn A A A A
  39. 39. AlwaysOn – Механизм работы Commit Запись в локальный Log Передача данных Запись в log Log Подтверждение Сохранено в локальном log Запись данных в базу Подтверждение DBDB Log 1 2 2 3 4 5 6 7
  40. 40. AlwaysOn • Переключение нескольких баз (концепция Availability Groups) • Автоматическое переключение • Несколько копий базы • Чтение с копий • Перенаправление соединения пользователя в случае отказа основной базы
  41. 41. AlwaysOn • T-SQL DDL команды • Wizards • Новая группа доступности (availability group) • Добавление базы данных в группу доступности • Добавление реплики в группу доступности • Failover availability group • AlwaysOn Dashboard for availability group health view • Object Explorer details for availability group info • PowerShell cmdlets for automation
  42. 42. Резервное копирование в облако Ключевые преимущества Снижение капитальных и операционных расходов Улучшенная защита данных Восстановление резервной копии в ВМ Microsoft Azure Полное резервное копирование SQL Server Microsoft Azure Хранение Географическая репликация Восстановление в ВМ Локальная сеть SQL Server Полное шифрование данных Периодические снимки экрана (автоматически или вручную)
  43. 43. Локальная сеть Аварийное восстановление в облаке Ключевые преимущества Снижение капитальных и операционных расходов Аварийное восстановление с низким показателем RTO Быстрое составление отчетов BI "Время восстановления сократилось с нескольких минут до нескольких секунд… У нас практически нет потерь данных". Представитель компании Восстановле- ние за несколько секунд Значительное снижение расходов Microsoft Azure Вспом. реплика Запуск резервных копий Контроллер домена Основная реплика Асинхронная связь Запуск отчетов BI Туннель VPN (Microsoft Azure Virtual Network) Вспом. реплика Синхронная связь
  44. 44. Разработка новых приложений для облака Microsoft Azure SQL DatabaseКлючевые преимущества Динамич. масштабируемость Быстрый выход на рынок Управляемая платформа и инфраструктура "Microsoft Azure не требует больших затрат времени и денег, поэтому мы смогли сосредоточиться на расширении бизнеса, а не рутинном управлении ИТ". Уильям К. Смит (William K Smythe), 3M 50% Снижение расходов на управление Экономное масштаби- рованиерост доходов Мобильные устройства Интернет
  45. 45. Создание гибридных приложений 50 Ключевые преимущества Снижение капитальных и операционных расходов Улучшение изоляции внутренних ресурсов Более широкий глобальный охват "Теперь мы можем добавлять больше игроков и операторов без снижения скорости отклика приложения". Томас Пуллен (Thomas Pullen), BetOnSoft Улучшенная доступность и масштабиру- емость Поддержка в 10 раз более высокой нагрузки с использованием аналитики в реальном времени Собственный ЦОДМаркетинговые приложения, размещаемые в Microsoft Azure Переданные рабочие нагрузки BI Показатели и средства мониторинга БД показателей БД вирусного маркетинга БД OLTP Основная реплика AlwaysOn Синхронные реплики AlwaysOn Доступные для чтения вспом. реплики Microsoft Azure Маркетинговые приложения в Microsoft AzureКластер SQL Server 2012 AlwaysOn
  46. 46. Более 158 000 ВМ SQL Server в Microsoft Azure Более 750 000 БД Microsoft Azure SQL
  47. 47. Вопросы?

×