Группы доступности Always On для чтения и масштабирования
Область применения: SQL Server
Группа доступности — это комплексное решение, которое позволяет использовать функции высокой доступности в SQL Server и включает встроенные решения масштабирования. В стандартном приложении базы данных множество клиентов выполняют разные типы рабочих нагрузок. Иногда из-за ограничений ресурсов могут возникать "узкие места".
В контексте группы доступности масштабирование чтения отгрузит рабочие нагрузки чтения на одну или несколько вторичных реплик. Вы можете освободить ресурсы и повысить пропускную способность для рабочей нагрузки OLTP. Кроме того, вы можете увеличить производительность и масштаб рабочих нагрузок, выполняющих только чтение. Воспользуйтесь самой быстрой технологией репликации для SQL Server и создайте группу реплицируемых баз данных, чтобы перенести рабочие нагрузки отчетности и аналитики на реплики только для чтения, освободив другие ресурсы.
Группы доступности позволяют настроить вторичные реплики для поддержки доступа только для чтения к базам данных — получателям.
Клиентские приложения с рабочими нагрузками по аналитике и отчетности могут подключаться к базам данных — получателям напрямую. Вы также можете создать список маршрутизации по нагрузкам только для чтения, позволяющий им подключаться к базе данных — источнику. Он будет переадресовывать запросы на подключение каждой из содержащихся в нем вторичных реплик по принципу циклического перебора.
Группы доступности для чтения и масштабирования без кластера
В SQL Server 2016 (13.x) и более ранних версиях все группы доступности требуются для кластера. Кластер обеспечивал непрерывность бизнес-процессов — высокую доступность и аварийное восстановление (HADR). Кроме того, для операций чтения настраивались вторичные реплики. Если высокая доступность не была целью, на настройку и эксплуатацию кластера тратились значительные операционные ресурсы. SQL Server 2017 (14.x) представляет группы доступности для чтения без кластера.
Примечание.
В группах доступности, которые не используют отказоустойчивую кластеризацию Windows Server (WSFC), такие как группы доступности для чтения или группы доступности в Linux, столбцы в динамических представлениях групп доступности, связанных с кластером, могут отображать данные о внутреннем кластере по умолчанию. Эти столбцы предназначены только для внутреннего использования и могут игнорироваться.
Если ваш бизнес требует экономить ресурсы для критически важных рабочих нагрузок, выполняемых на первичной реплике, вы можете использовать маршрутизацию только для чтения или напрямую подключаться к доступным для чтения вторичным репликам. При этом вы не зависите от интеграции с какой-либо технологией кластеризации. Эти новые возможности доступны для SQL Server 2017 (14.x), работающего на платформах Windows и Linux.
Внимание
Это не настройка высокой доступности. Нет инфраструктуры для мониторинга и координации обнаружения сбоев и автоматической отработки отказа. Без кластера SQL Server не может обеспечивать низкое целевое время восстановления (RTO), которое предлагают автоматизированные решения высокой доступности. Если вам нужны функции высокой доступности, используйте диспетчер кластеров (отказоустойчивый кластер Windows Server в Windows или Pacemaker в Linux).
Группы доступности для чтения и масштабирования предоставляют возможность аварийного восстановления. Если реплики только для чтения работают в режиме синхронной фиксации, они обеспечивают нулевой период целевой точки восстановления (RPO). Сведения об отработке отказа группы доступности для чтения и масштабирования см. в разделе Отработка отказа первичной реплики в группе доступности для чтения и масштабирования.
Использование распределенных групп доступности для географического чтения и масштабирования
Географически разделенные решения могут реализовывать решения для чтения и масштабирования с помощью распределенных групп доступности. Вы можете использовать их для высвобождения ресурсов за счет переноса рабочих нагрузок чтения с первичной реплики на доступные для чтения вторичные реплики на сайтах, расположенных ближе к источнику рабочих нагрузок чтения. Распределенные группы доступности сокращают использование ресурсов в первичной реплике. Они также помогают увеличить пропускную способность чтения, уменьшая сетевую задержку и используя выделенные ресурсы.
Одна распределенная группа доступности может иметь до 17 доступных для чтения вторичных реплик. Чтобы расширить возможности масштабирования, соедините несколько групп доступности в последовательную цепь и получите еще больше доступных для чтения реплик. Вы также можете развернуть две распределенные группы доступности из одной группы, обеспечив низкую задержку чтения в географически распределенных средах.