Поделиться через


Масштабирование решения служб Analysis Services

Часто возникают ситуации, когда администратору базы данных служб Службы Analysis Services требуется улучшить время отклика запроса при увеличении числа конечных пользователей. Это можно сделать двумя способами: повысить мощность имеющегося сервера (увеличить объем аппаратных ресурсов) или распределить нагрузку на несколько малых серверов (масштабное развертывание).

Увеличение аппаратных ресурсов решения обычно имеет предел, когда дальнейшее расширение или обновление существующего оборудования становится невозможным. Например, к имеющейся материнской плате не подойдет новая версия процессора, или закончится физическое адресное пространство памяти. Масштабное развертывание является более гибким решением. Его ограничения обходятся более легко. При достижении максимального числа серверов в подсистеме балансировки нагрузки на сеть к решению можно добавить еще одну подсистему балансировки и распределить серверы между несколькими системами.

В этом документе описана теоретическая архитектура масштабного развертывания решения служб Службы Analysis Services.

Сценарий

Администратор базы данных служб Службы Analysis Services должен обеспечить конечным пользователям решения служб Службы Analysis Services наилучшее время отклика запроса, сведя при этом к минимуму ежедневное время простоя системы при обновлении данных. Вначале было 80 пользователей, за последний месяц их число возросло вдвое, и ожидается, что через 6 месяцев это число возрастет еще в два раза. Начиная с седьмого месяца ожидается, что число пользователей будет возрастать на 4% в месяц. Размер базы данных служб Службы Analysis Services на данный момент составляет 80 ГБ. Он возрастает на 6 ГБ в месяц. В данный момент база данных содержит данные за 12 предыдущих месяцев. Ожидается, что в ней будет храниться журнал за 3 прошлых финансовых года, а также за текущий год. Среднее время обработки составляет 2,5 часа, а время простоя составляет 0,5 часа.

Альтернатива

При ознакомлении с этим сценарием единственным решением может показаться увеличение аппаратных ресурсов сервера. Это обеспечит обслуживание без простоя, но приведет к низкой производительности во время обработки. Тем не менее в данный момент в системе есть 160 пользователей, и за последующие 6 месяцев это число возрастет до 320. Далее число пользователей будет продолжать ежемесячно увеличиваться на 13-16 человек в течение неизвестного периода времени. При таком темпе роста число пользователей возрастет еще вдвое через 18-19 месяцев стабильного роста. В такой ситуации будет трудно подобрать оборудование подходящей мощности и обосновать заявку на выделение бюджета под оборудование, которое будет использоваться на 50% мощности в течение следующих 12 месяцев.

К счастью, в службах SQL Server 2008 Службы Analysis Services с базами данных только для чтения возможно масштабное развертывание данного решения.

Архитектура масштабного развертывания

В создании этой архитектуры используются два элемента:

  • физический макет, цель которого — максимально увеличить пропускную способность для конечного пользователя;

  • рабочая платформа, цель которой — сократить время простоя до минимума.

Физический макет

Решение состоит из трех основных компонентов:

  • среда обработки;

  • сеть хранения данных (SAN);

  • среда доступа к данным.

В первом компоненте (обработка) данные обновляются и обрабатываются с помощью сегмента сети хранения данных. Во втором компоненте (сеть хранения данных) данные хранятся для среды обработки и для среды доступа к данным. В третьем компоненте (доступ к данным) данные делаются доступными для конечных пользователей.

Среда обработки

Среда обработки состоит из одного сервера, соединения с сетью хранения данных и логического тома этой сети, используемого для хранения данных служб Службы Analysis Services.

Сеть хранения данных (SAN)

Решение состоит из двух независимых «логических томов сети хранения данных»: один из них используется для среды обработки, другой — для среды доступа к данным.

Сеть хранения данных — это набор устройств, обеспечивающих работу физического хранилища для многомерных баз данных. В ней поддерживаются высокоскоростные соединения между серверами и хранилищем, в состав которого входит общее хранилище, кластеры и механизмы восстановления данных.

В этом документе термин «логический том сети хранения данных» означает единицу хранения, которую операционная система воспринимает как один физический диск.

Среда доступа к данным

Среда доступа к данным формируется из нескольких серверов (обычно начиная от трех), имеющих общий логический том сети хранения данных. Пользователи подключаются к серверам доступа к данным через устройство со сбалансированной нагрузкой на сеть (NLB), которое перенаправляет все входящие запросы с помощью алгоритма распределения нагрузки.

Варианты физического макета

При необходимости можно использовать следующие макеты для достижения лучшей производительности решения.

Среда обработки

В некоторых случаях можно использовать два сервера обработки: один — для реляционных баз данных, второй — для баз данных служб Службы Analysis Services.

Кроме того, можно задать несколько логических томов для независимого хранения реляционных и многомерных баз данных в сети хранения данных.

Среда доступа к данным

Два или более устройств со сбалансированной нагрузкой на сеть (NLB) вводятся в состав решения. Для каждого такого устройства должно существовать как минимум три сервера доступа к данным.

Платформа операций

Работа данного решения разделяется на следующие три фазы:

  • обработка данных;

  • окно простоя;

  • сброс обработки данных.

Обработка данных

На этой фазе многомерная база данных обновляется и обрабатывается. По окончании обработки содержимое многомерной базы данных готово к отправке, при этом данные для передачи обрабатываются в среде доступа к данным. Этот процесс состоит из следующих шагов.

  • Отключение базы данных служб Службы Analysis Services от сервера обработки данных.

  • Перевод в автономный режим логического тома сети хранения данных, содержащего базу данных служб Службы Analysis Services.

Окно простоя

На этой фазе содержимое обновленной базы данных меняется местами с содержимым исходной базы данных.

  • Настройте в устройствах со сбалансированной нагрузкой на сеть отклонение всех входящих запросов.

  • Отсоедините базы данных служб Службы Analysis Services от сервера доступа к данным.

  • Переведите в автономный режим логический том сети хранения данных, содержащий базы данных служб Службы Analysis Services каждого сервера доступа к данным.

  • С помощью команд сети хранения данных поменяйте местами логические тома этой сети в среде обработки и в среде доступа к данным.

  • Для каждого сервера доступа к данным переведите логический том сети хранения данных, содержащий базы данных служб Службы Analysis Services, в оперативный режим как устройство, доступное только для чтения.

  • Подсоедините базу данных служб Службы Analysis Services в режиме ReadOnly к каждому серверу доступа к данным.

  • Настройте в устройствах со сбалансированной нагрузкой на сеть прием всех входящих запросов.

Сброс обработки данных

На этой фазе содержимое старого логического тома сети хранения данных обновляется и переводится в оперативный режим в среде обработки.

  • С помощью команд сети хранения данных создайте в логической сети хранения данных среды обработки зеркальную копию для логического тома этой сети.

  • Переведите логический том сети хранения данных, содержащий базу данных служб Службы Analysis Services среды обработки, в оперативный режим как устройство, доступное для чтения и записи.

  • Подсоедините базу данных служб Службы Analysis Services в режиме ReadWrite к серверу среды обработки данных.