Планирование задач администрирования служб SSAS с помощью агента SQL Server
Используя службу агента SQL Server, вы можете запланировать административные задачи Analysis Services в нужном порядке и в нужное время. Планирование задач позволяет автоматизировать процессы, выполняемые с регулярной или прогнозируемой цикличностью. Задачи типа обработки кубов могут быть запланированы на периоды низкой деловой активности. Кроме того, при создании шагов задания агента SQL Server пользователь имеет возможность определить порядок, в котором будут выполняться задачи. Например, можно выполнить обработку куба, а затем создать его резервную копию.
Шаги задания позволяют управлять потоком выполнения. Агент SQL Server может быть настроен таким образом, чтобы в случае сбоя одного из заданий выполнение оставшихся задач было продолжено или прекращено. Вы можете также настроить агент SQL Server на отправку уведомлений о выполнении или сбое выполнения задания.
Данный раздел является пошаговым руководством, демонстрирующим два способа использования агента SQL Server для запуска скрипта XML для аналитики. В первом примере показано, как запланировать обработку одного измерения. Второй пример показывает, как объединить задачи обработки в единый скрипт, выполняемый по расписанию. Для прохождения этого пошагового руководства необходимо выполнить следующие предварительные требования.
Предварительные требования
Должна быть установлена служба агента SQL Server.
По умолчанию задания запускаются под учетной записью службы. В SQL Server 2012 учетной записью по умолчанию для агента SQL Server является NT Service\SQLAgent$<имя_экземпляра>. Для выполнения задачи резервного копирования или обработки эта учетная запись должна принадлежать системному администратору в экземпляре служб Analysis Services. Дополнительные сведения см. в разделе Предоставление разрешений администратора сервера (службы Analysis Services).
Также необходимо наличие тестовой базы данных, с которой будет производиться работа. Для использования в данном пошаговом руководстве вы можете развернуть образец многомерной базы данных AdventureWorks или проект из учебника по многомерному моделированию в службах Analysis Services. Дополнительные сведения см. в разделе Установка образцов данных и проектов для учебника по многомерному моделированию в службах Analysis Services.
Пример 1. Обработка измерения в запланированной задаче
В этом примере показано, как создать и запланировать задание по обработке измерения.
Запланированная задача служб Analysis Services представляет собой скрипт XML для аналитики, внедренный в задание агента SQL Server. Это задание имеет расписание для запуска в нужное время и с нужной частотой. Поскольку агент SQL Server является частью SQL Server, при создании задачи администрирования придется работать и с ядром СУБД, и со службами Analysis Services.
Создание скрипта для обработки измерения в задании агента SQL Server
В среде Среда SQL Server Management Studio подключитесь к службам Analysis Services. Откройте папку базы данных и найдите измерение. Щелкните измерение правой кнопкой мыши и выберите команду Обработать.
Убедитесь в том, что в диалоговом окне Обработка измерения в разделе Список объектов для столбца Параметры обработки выбран параметр Обработка. Полная. Если этот параметр не выбран, выделите столбец Параметры обработки, а затем в раскрывающемся списке выберите Обработка. Полная.
Нажмите кнопку Скрипт.
На этом шаге открывается окно XML-запрос, содержащее скрипт XML для аналитики, который обрабатывает измерение.
В диалоговом окне Обработка измерения нажмите кнопку Отмена, чтобы закрыть его.
В окне Запрос XML для аналитики выделите скрипт XML для аналитики, щелкните его правой кнопкой мыши и выберите команду Копировать.
Этот шаг копирует скрипт XML для аналитики в буфер обмена Windows. Скрипт XML для аналитики вы можете оставить в буфере обмена или вставить его в «Блокнот» или другой текстовый редактор. Далее приведен пример скрипта XML для аналитики.
<Batch xmlns="https://schemas.microsoft.com/analysisservices/2003/engine"> <Parallel> <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Object> <DatabaseID>Adventure Works DW Multidimensional</DatabaseID> <DimensionID>Dim Account</DimensionID> </Object> <Type>ProcessFull</Type> <WriteBackTableCreation>UseExisting</WriteBackTableCreation> </Process> </Parallel> </Batch>
Создание и планирование задания обработки измерения
Подключитесь к экземпляру ядра СУБД, а затем откройте обозреватель объектов.
Разверните узел Агент SQL Server.
Щелкните правой кнопкой мыши Задания и выберите пункт Создать задание.
В диалоговом окне Создание задания введите имя задания в поле Имя.
В разделе Выбор страницы выберите Шаги, а затем нажмите Создать.
В диалоговом окне Новый шаг задания введите имя шага в поле Имя шага.
В поле Сервер введите localhost для экземпляра служб Analysis Services по умолчанию или localhost\<instance name> для именованного экземпляра.
Если задание будет выполняться с удаленного компьютера, используйте имя сервера и имя экземпляра, в котором будет выполняться задание. Используйте формат <server name> для экземпляра по умолчанию или <server name>\<instance name> для именованного экземпляра.
В поле Тип выберите Команда служб SQL Server Analysis Services.
В поле Команда щелкните правой кнопкой мыши и выберите Вставить. Скрипт XML для аналитики, созданный на предыдущем шаге, должен отобразиться в командном окне.
Нажмите кнопку ОК.
В разделе Выбор страницы выберите Расписания, а затем нажмите Создать.
В диалоговом окне Создание расписания задания введите имя расписания в поле Имя, а затем нажмите кнопку ОК.
Этот шаг создает расписание на воскресенье в 00:00. Следующий шаг показывает, как вручную выполнить задание. Вы можете также указать расписание, которое выполнит задание во время его мониторинга.
В диалоговом окне Создание задания нажмите кнопку ОК.
В обозревателе объектов разверните узел Задания, щелкните правой кнопкой мыши созданное задание и выберите команду Запустить задание на шаге.
Поскольку задание состоит только из одного шага, оно будет выполнено немедленно. Если в задании содержится более одного шага, вы можете выбрать шаг, с которого будет запущено задание.
По завершении задания нажмите кнопку Закрыть.
Пример 2. Пакетная обработка измерения и секции в запланированной задаче
Процедуры в данном примере демонстрируют, как создать и запланировать задание по пакетной обработке измерения базы данных служб Analysis Services и одновременно обработать секцию куба, которая зависит от измерения для агрегата. Дополнительные сведения о пакетной обработке объектов служб Analysis Services см. в разделе Выполнение пакетной обработки объектов служб Analysis Services.
Создание скрипта для пакетной обработки измерения и секции в задании агента SQL Server
Используя ту же базу данных, разверните узел Измерения, щелкните правой кнопкой мыши измерение Клиент и выберите Обработать.
Убедитесь в том, что в диалоговом окне Обработка измерения для столбца Параметры обработки в разделе Список объектов выбран параметр Обработка. Полная.
Нажмите кнопку Скрипт.
На этом шаге открывается окно XML-запрос, содержащее скрипт XML для аналитики, который обрабатывает измерение.
В диалоговом окне Обработка измерения нажмите кнопку Отмена, чтобы закрыть его.
Разверните последовательно узлы Кубы, Adventure Works, Группы мер, Интернет-продажи, Секции, щелкните правой кнопкой мыши последнюю секцию в списке и выберите команду Обработать.
Убедитесь в том, что в диалоговом окне Обработка секции для столбца Параметры обработки в разделе Список объектов выбран параметр Обработка. Полная.
Нажмите кнопку Скрипт.
На этом шаге откроется второе окно XML-запрос, содержащее скрипт XML для аналитики, который обрабатывает секцию.
В диалоговом окне Обработка секции нажмите кнопку Отмена, чтобы закрыть редактор.
На этом этапе необходимо объединить два скрипта и обеспечить обработку измерения в первую очередь.
Внимание! Если сначала обрабатывается секция, последующая обработка измерения приводит к тому, что секция становится необработанной. После этого для достижения обработанного состояния требуется повторная обработка секции.
В окне Запрос XML для аналитики, содержащем скрипт XML для аналитики, который обрабатывает раздел, выделите код внутри тегов Batch и Parallel, щелкните правой кнопкой мыши выделенный скрипт и выберите команду Копировать.
<Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Object> <DatabaseID> Adventure Works DW Multidimensional</DatabaseID> <CubeID>Adventure Works</CubeID> <MeasureGroupID>Fact Internet Sales 1</MeasureGroupID> <PartitionID> Internet_Sales_2004</PartitionID> </Object> <Type>ProcessFull</Type> <WriteBackTableCreation>UseExisting</WriteBackTableCreation> </Process>
Откройте окно Запрос XML для аналитики, содержащее скрипт XML для аналитики, который обрабатывает измерение. Щелкните правой кнопкой мыши внутри скрипта слева от тега </Process> и выберите команду Вставить.
В следующем примере показан измененный скрипт XML для аналитики.
<Batch xmlns="https://schemas.microsoft.com/analysisservices/2003/engine"> <Parallel> <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Object> <DatabaseID>Adventure Works DW Multidimensional</DatabaseID> <DimensionID>Dim Customer</DimensionID> </Object> <Type>ProcessFull</Type> <WriteBackTableCreation>UseExisting</WriteBackTableCreation> </Process> <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Object> <DatabaseID>Adventure Works DW Multidimensional</DatabaseID> <CubeID>Adventure Works</CubeID> <MeasureGroupID>Fact Internet Sales 1</MeasureGroupID> <PartitionID>Internet_Sales_2004</PartitionID> </Object> <Type>ProcessFull</Type> <WriteBackTableCreation>UseExisting</WriteBackTableCreation> </Process> </Parallel> </Batch>
Выделите измененный скрипт XML для аналитики, щелкните его правой кнопкой мыши и выберите команду Копировать.
Этот шаг копирует скрипт XML для аналитики в буфер обмена Windows. Скрипт XML для аналитики вы можете оставить в буфере обмена, сохранить в файл или вставить его в «Блокнот» или другой текстовый редактор.
Создание и планирование задания пакетной обработки
Подключитесь к экземпляру SQL Server, после чего откройте обозреватель объектов.
Разверните узел Агент SQL Server. Если служба не запущена, запустите ее.
Щелкните правой кнопкой мыши Задания и выберите пункт Создать задание.
В диалоговом окне Создание задания введите имя задания в поле Имя.
В разделе Шаги нажмите Создать.
В диалоговом окне Новый шаг задания введите имя шага в поле Имя шага.
В поле Тип выберите Команда служб SQL Server Analysis Services.
В разделе Выполнять как выберите пункт Учетная запись службы агента SQL Server. Как было указано в разделе «Предварительные требования», эта учетная запись должна иметь разрешения администратора для служб Analysis Services.
В поле Сервер укажите имя сервера экземпляра служб Analysis Services.
В поле Команда щелкните правой кнопкой мыши и выберите Вставить.
Нажмите кнопку ОК.
На странице Расписания нажмите кнопку Создать.
В диалоговом окне Создание расписания задания введите имя расписания в поле Имя, а затем нажмите кнопку ОК.
Этот шаг создает расписание на воскресенье в 00:00. Следующий шаг показывает, как вручную выполнить задание. Вы можете также выбрать расписание, которое выполнит задание во время его мониторинга.
Чтобы закрыть диалоговое окно, нажмите кнопку ОК.
В обозревателе объектов разверните узел Задания, щелкните правой кнопкой мыши созданное задание и выберите команду Запустить задание на шаге.
Поскольку задание состоит только из одного шага, оно будет выполнено немедленно. Если в задании содержится более одного шага, вы можете выбрать шаг, с которого будет запущено задание.
По завершении задания нажмите кнопку Закрыть.
См. также
Основные понятия
Обработка параметров и настроек (службы Analysis Services)
Создание скриптов для административных задач в службах Analysis Services