Служба PowerPivot System
Системная служба PowerPivot представляет собой компонент PowerPivot для SharePoint, который обеспечивает доступ к книгам PowerPivot и управление серверами в ферме SharePoint 2010. Вместе с другими компонентами сервера он реализует инфраструктуру среднего уровня, которая используется для создания соединений пользователей с данными PowerPivot, данными загрузки и выгрузки, а также обеспечивает наблюдение и создание отчетов о работоспособности сервера.
Системная служба PowerPivot является веб-службой, устанавливаемой вместе с экземпляром служб Analysis Services, запущенным в режиме интеграции с SharePoint. Две службы тесно связаны между собой, и обе используются для обеспечения доступности данных PowerPivot в ферме. Провизионирование службы выполняется с помощью приложения службы SharePoint, которое было создано при установке или вручную после установки в центре администрирования SharePoint.
Перейдите по одной из следующих ссылок к соответствующему подразделу в этом разделе.
Операции службы
Настройка и администрирование службы
Зависимости и требования службы
Соединение с серверами в пределах фермы
Размещение запросов
Кэширование данных PowerPivot
Обнаружение и обслуживание кэша
Операции службы
Системная служба PowerPivot выполняет следующие операции.
Операции сервера |
Описание |
---|---|
Обрабатывает запросы по требованию для данных PowerPivot |
Системная служба PowerPivot обрабатывает запросы к данным PowerPivot, которые хранятся в библиотеках содержимого в ферме SharePoint. Принимает запросы от поставщика данных MSOLAP на сервере приложений или от веб-службы PowerPivot на сервере клиентского веб-интерфейса. Локальная системная служба PowerPivot извлекает PowerPivot из библиотеки SharePoint путем олицетворения пользователя SharePoint, запросившего данные. Затем системная служба PowerPivot направляет запрос на загрузку данных локальным службам Analysis Services. Службы Analysis Services извлекают данные PowerPivot из книги, загружают их в память и возвращают результирующий набор клиенту или приложению сервера, запросившего данные. Системная служба PowerPivot продолжает наблюдение за запросами данных и обновляет эти сведения в базе данных приложения службы PowerPivot. Если файл был неактивен в течение 48 часов, системная служба PowerPivot отправит запрос на выгрузку локальному экземпляру служб Analysis Services. |
Обрабатывает запросы на обновление данных PowerPivot |
Кроме того, системная служба PowerPivot отслеживает очередь заданий обновления данных, запланированных для периодического запуска. В запланированное время эта служба дает указание локальному экземпляру служб Analysis Services загрузить данные PowerPivot и повторно импортировать данные из внешних источников данных. Обновление данных является операцией сервера, которая выполняется от имени пользователя. Обратите внимание, что для поддержки операции этого типа требуются дополнительные службы и настройка. Дополнительные сведения см. в разделе Включение и настройка обновления данных PowerPivot. |
Распределение обработки по экземплярам Служба Analysis Services |
Системная служба PowerPivot равномерно распределяет нагрузку по обработке запросов между несколькими серверами, если в ферме существует несколько экземпляров PowerPivot для SharePoint. SharePoint ведет список служб, доступных на каждом сервере. Системная служба PowerPivot использует этот список для поиска других серверов в ферме. Чтобы определить, какой сервер PowerPivot для SharePoint должен получить данный запрос, системная служба PowerPivot использует определенную методологию распределения. Используются циклический перебор (по умолчанию) или методология на основе учета исправности сервера. В настройках приложения службы можно задать использование любой из этих методологий. Дополнительные сведения о распределении см. в подразделе Request Allocation. |
Настраивает пользовательские и административные соединения |
Системная служба PowerPivot управляет активными, используемыми повторно и кэшируемыми соединениями с экземпляром служб Analysis Services. Текущие запросы на соединение с уже загруженными данными PowerPivot могут обслуживаться через пулы соединений, создаваемые для подключения пользователей к одному и тому же источнику данных в оперативной памяти. Системная служба PowerPivot также создает административные соединения с другими экземплярами системной службы PowerPivot данной фермы и управляет этими соединениями. |
Отправляет запросы на кэширование данных |
Для снижения времени ожидания при получении данных PowerPivot из библиотеки содержимого системная служба PowerPivot использует метод кэширования, при котором из файловой системы загружается и хранится локальная копия данных. Дополнительные сведения о кэшировании см. ниже в подразделе Caching PowerPivot Data. |
Отправляет запросы на выгрузку данных |
Системная служба PowerPivot отслеживает доступ к данным PowerPivot и дает указания экземпляру служб Analysis Services выгружать неактивные источники данных из памяти. Данные PowerPivot после загрузки в оперативную память остаются в ней для обслуживания дополнительных запросов к одним и тем же данным. После определенного периода бездействия системная служба PowerPivot выдает экземпляру служб Analysis Services требование на выгрузку, чтобы он выгрузил данные PowerPivot и освободил память на сервере приложений. По умолчанию сеанс считается неактивным, если в течение 48 часов пользователь не осуществлял взаимодействия с данными. |
Выполняет сбор данных об использовании |
Системная служба PowerPivot регистрирует события использования: соединение, загрузку, выгрузку, отчеты по запросам, проверки состояния сервера — и создает данные об использовании для этих событий. Данные об использовании можно просмотреть с помощью панели мониторинга PowerPivot. Дополнительные сведения см. в разделе Сбор данных об использовании PowerPivot. |
Наблюдает за исправностью сервера |
Системная служба PowerPivot отслеживает доступность и состояние сервера Служба Analysis Services. С интервалами, определяемыми заданием таймера сборщика статистических данных об исправности PowerPivot, системная служба PowerPivot запрашивает системные сведения с каждого компьютера, на котором имеется экземпляр служб Analysis Services. Данные об использовании ЦП и памяти включаются в отчеты об исправности сервера на панели мониторинга PowerPivot. Дополнительные сведения см. в разделе Панель мониторинга PowerPivot. |
Настройка и администрирование службы
Системная служба PowerPivot настраивается с помощью приложения службы PowerPivot, которое инициализирует физический экземпляр службы и использует параметры, данные приложения и контекст безопасности, которые определены для этого приложения службы. Приложение службы обладает свойствами, которые можно использовать для настройки пороговых значений времени ожидания, балансировки нагрузки, уровня ведения журнала событий, сбора данных об использовании и обновления данных, но оно не обеспечивает свойств, позволяющих изменять стандартные интервалы времени для кэширования, выгрузки или удаления файлов данных.
Если настройка приложения службы PowerPivot была выполнена автоматически программой установки SQL Server, то служба приписывается к пулу приложений службы — системе веб-служб SharePoint, который определен для фермы. Администратору фермы рекомендуется затем изменить учетную запись службы, чтобы она запускалась под выделенной учетной записью. Дополнительные сведения см. в разделах Приложение службы PowerPivot и изменить учетные записи и пароли служб (PowerPivot для SharePoint).
Настройка и администрирование сервера осуществляются с помощью центра администрирования и панели управления PowerPivot, которые показывают данные об использовании для конкретных приложений службы PowerPivot. Дополнительные сведения см. в разделах Панель мониторинга PowerPivot и Администрирование SharePoint (PowerPivot для SharePoint).
Для управления службами, которые установлены с помощью PowerPivot для SharePoint, не следует использовать другие средства и приложения, например диспетчер конфигурации SQL Server или службы IIS. При использовании центра администрирования для запуска или останова служб, а также изменения учетных записей или паролей службы гарантируется выполнение широковещательной рассылки изменений состояний серверов или идентификаторов по другим серверам в ферме. Если для администрирования служб, работающих в ферме, используются средства SharePoint, то также обеспечивается обновление разрешений и имен входа, управляемых с помощью SharePoint.
Зависимости и требования службы
Системная служба PowerPivot выполняется как общая служба на сервере приложений SharePoint. Она тесно связана с локальным экземпляром служб SQL Server Analysis Services PowerPivot (MSOLAP$PowerPivot), запускаемым на одном с ней физическом компьютере. Это единственный канал для всех запросов загрузки и выгрузки данных, которые направляются локальному экземпляру служб Analysis Services. У всех физических экземпляров системной службы PowerPivot System всегда имеется экземпляр сервера служб Analysis Services. Программа установки SQL Server устанавливает и настраивает эти службы вместе. Чтобы запросы не завершались неудачей, обе эти службы должны находиться в одинаковом состоянии (работа или останов).
Для системной службы PowerPivot следует задать приложение службы. Приложение служб обеспечивает конечную точку HTTP. Пока не будет выполнено это действие, операции службы будут недоступны.
PowerPivot для SharePoint зависит от других функций и инфраструктуры SharePoint, включая службы Excel, службу Claims to Windows Token и службу Secure Store. Дополнительные сведения о том, выполнение каких операций зависит от функциональных возможностей, предоставляемых службой SharePoint, см. в разделе Конфигурация PowerPivot для SharePoint по умолчанию.
Соединение с серверами в пределах фермы
Подключения к данным PowerPivot выполняются из клиентских или серверных приложений, которые запрашивают данные PowerPivot посредством клиентских библиотек служб Analysis Services. Клиентские библиотеки (ADOMD.NET, AMO или поставщик OLE DB для служб Analysis Services) определяют, находится ли книга PowerPivot в пределах фермы или за ее пределами. Клиентские библиотеки по-разному выполняют маршрутизацию запроса в зависимости от типа URL-адреса книги (внутренний или внешний по отношению к ферме).
Запросы к данным внутри фермы направляются непосредственно в приложение службы PowerPivot, минуя веб-службу PowerPivot. Самым распространенным примером запроса такого типа является запрос данных PowerPivot, внедренных в книгу Excel. В этом случае для поиска приложения службы PowerPivot в ферме службы вычислений Excel используют поставщик OLE DB для служб Analysis Services. Прямые соединения с приложением службы PowerPivot не ограничиваются только службами вычислений Excel. Другие приложения, такие как отчеты службы Reporting Services или панели мониторинга PerformancePoint, также устанавливают прямые соединения с приложением службы PowerPivot, если отчет или панель мониторинга, которые запрашивают данные, работают в пределах той же фермы.
Запросы к данным за пределами фермы обычно поступают от клиентских или серверных приложений, которые запрашивают только данные PowerPivot. Самым распространенным примером запроса такого типа является использование книги PowerPivot в качестве внешнего источника данных в построителе отчетов или в качестве источника данных для другой книги Excel. В этом случае внешние соединения получают только данные PowerPivot, находящиеся в книге Excel, и не учитывают объекты визуализации данных и взаимодействия с данными, находящиеся в той же книге.
Внешние соединения направляются веб-службе PowerPivot в исходной ферме. Веб-служба PowerPivot находит и устанавливает соединение с приложением службы PowerPivot, которое в свою очередь направляет запрос в экземпляр служб Analysis Services, который загружает и возвращает данные. Дополнительные сведения об этой службе см. в разделе Веб-служба PowerPivot (PowerPivot для SharePoint).
Примечание Серверные компоненты PowerPivot для SharePoint не участвуют в открытии книги PowerPivot в Excel (например, когда URL-адрес SharePoint для книги вводится в диалоговом окне «Открытие файла»). Во время открытия серверного документа в Excel 2010 файл загружается из SharePoint на клиентскую рабочую станцию. В этом случае приложение Excel для настольных компьютеров и надстройка PowerPivot для Excel загружают и обрабатывают данные локально, с помощью внутрипроцессной версии подсистемы VertiPaq служб Analysis Services.
На следующей диаграмме показаны различные маршруты, по которым может следовать запрос в зависимости от его источника, будь то службы Excel в пределах фермы или клиентское средство, например построитель отчетов или приложение Excel, работающее вне фермы. Запросы данных в пределах фермы используют соединения WCF для других приложений служб. Запросы данных вне фермы используют HTTP-соединения, которые принимаются веб-службой PowerPivot.
Подключения к данным PowerPivot организуются поставщиком OLE DB для служб Analysis Services. Службы и приложения, получающие данные PowerPivot, должны использовать одну или несколько клиентских библиотек служб Analysis Services версии SQL Server 2008 R2. Эти библиотеки устанавливаются вместе с надстройкой PowerPivot для SharePoint или PowerPivot для Excel. Они являются распространяемыми компонентами, и поэтому их можно загрузить и установить с веб-страницы пакета дополнительных компонентов SQL Server 2008 R2 на этом веб-сайте Майкрософт.
Подключение к внедренным источникам данных
Внедренные данные обозначаются параметром «Data Source = $embedded$» в строке подключения к данным PowerPivot в родительской книге. Применительно к внедренным данным поставщик OLE DB служб Analysis Services открывает соединение WCF с приложением службы PowerPivot, которое затем получает данные, используя URL-адрес родительской книги. Адрес внедренных данных в SharePoint всегда представляет собой URL-адрес родительской книги.
Внедренные данные хранятся только в книгах Excel 2010. Ни отчеты служб Reporting Services, ни панели мониторинга PerformancePoint не внедряют данные PowerPivot в родительский документ, который представлен в клиентском приложении или средстве просмотра.
Размещение запросов
При наличии на ферме нескольких экземпляров серверов PowerPivot для SharePoint запрос к данным PowerPivot может обрабатываться любым сервером. Каждое приложение службы PowerPivot поддерживает список доступных серверов и загруженных данных, который используется при распределении запросов. Эти сведения хранятся в базе данных приложения службы PowerPivot. Каждое определяемое приложение службы PowerPivot имеет собственную версию списка серверов и ссылается на него при обработке каждого требования на выполнение запроса. Если экземпляр служб Analysis Services отклоняет запрос или выполнение запросов начинает завершаться неудачно, в этот список немедленно вносятся изменения.
Системная служба PowerPivot для распределения запросов использует систему кэширования и схему балансировки нагрузки. Сервер проводит следующие проверки, пока данные не будут найдены и загружены.
Данные уже загружены. Приложение службы PowerPivot проверяет свой внутренний список активных наборов данных PowerPivot для определения того, не загружены ли уже данные в память экземпляром служб Analysis Services в ферме. Если данные уже загружены, соединение пользователя открывается для нового запроса.
Данные не загружены, но находятся в кэше. Приложение службы PowerPivot проверяет свой внутренний список кэшированных наборов данных PowerPivot, которые уже находятся в файловой системе. Если один и тот же набор данных PowerPivot кэширован на нескольких серверах, то приложение службы PowerPivot проверяет исправность серверов и формирует список серверов, которые имеют достаточно ресурсов, чтобы принять запрос. Из этого списка сервер выбирается случайным образом.
Данные не загружены и отсутствуют в кэше. В этом случае выборка данных PowerPivot должна осуществляться из библиотеки содержимого. Для определения того, на какой сервер должен быть направлен запрос, используется схема распределения. После выбора сервера приложение службы PowerPivot выдает экземпляру служб Analysis Services запрос на загрузку, передавая URL-адрес SharePoint книги PowerPivot.
По умолчанию PowerPivot для SharePoint применяет циклический перебор, который предусматривает распределение запросов в повторяющемся порядке по двум или большему количеству серверов PowerPivot. Можно также указать, что запросы должны распределяться по схеме на основании исправности сервера. Если задан этот параметр, служба PowerPivot направит запрос на сервер, у которого в данный момент самая низкая нагрузка. Дополнительные сведения об определении схемы балансировки нагрузки см. в разделе Создание и настройка приложения службы PowerPivot.
Кэширование данных PowerPivot
Если данные PowerPivot неактивны в течение 48 часов, то данные выгружаются из памяти и кэшируются на диск. Кэширование файлов данных позволяет сократить время ожидания, связанное с получением данных из базы данных содержимого. Поскольку данные сначала кэшируются на диск, сервер получает возможность быстрой повторной загрузки данных для обслуживания требования на выполнение запроса или для обновления данных. Данные хранятся в кэше в течение трех дней, а затем они физически удаляются с сервера.
Данные PowerPivot кэшируются на сервере, на который они загружены. Хотя кэшированные данные по возможности используются повторно, одни и те же данные могут быть кэшированы на нескольких серверах, если к ним часто осуществляется доступ и ранее запросы были направлены на другие серверы.
По умолчанию кэшированные файлы сохраняются в папке «C:\Program Files\Microsoft SQL Server\MSAS10_50.POWERPIVOT\OLAP\Backup» экземпляром Служба Analysis Services. Доступ для чтения и записи к этой папке предоставляется и экземпляру служб Analysis Services, и приложению службы PowerPivot. Кэшируются только файлы данных PowerPivot. Книга Excel, которая используется для предоставления данных, не кэшируется и не используется повторно после извлечения данных PowerPivot.
Можно удалять файлы данных PowerPivot из папки Backup вручную, освобождая место на диске, но удаленные файлы будут снова добавляться в кэш в следующий раз, когда они потребуются. Возможность выключать кэширование для системы или для отдельных книг PowerPivot не предусмотрена. Все файлы данных PowerPivot кэшируются в файловой системе после выполнения любой операции выгрузки.
Обнаружение и обслуживание кэша
Сведения о кэшированных файлах поддерживаются приложением службы PowerPivot. Служба запускает процесс очистки и обнаружения, который удаляет неиспользованные данные и находит новые кэшированные файлы данных. Обновляемые данные записываются в карту экземпляров в базе данных приложения службы PowerPivot.
Процесс очистки и обнаружения работает в фоновом режиме. Его нельзя ни конфигурировать, ни запускать вручную для выполнения принудительной чистки и обнаружения.
Обслуживание включает в себя следующие действия.
Удаление всех кэшированных файлов, не используемых в течение последних 3 дней. Кэшированные файлы удаляются только после их неактивности в течение 5 дней (2 дней в памяти сервера и 3 дней в кэше). Процесс проверяет наличие неактивных файлов каждые 30 минут.
Удаление всех кэшированных файлов, измененных или удаленных в базе данных содержимого. Например, если данные были обновлены на сервере, все кэшированные копии этих данных удаляются. Эта проверка выполняется ежедневно.
Добавление новых записей для новых кэшированных файлов, обнаруженных в файловой системе, в базы данных приложения службы PowerPivot. База данных содержит таблицы, в которых хранятся сведения о кэшированных файлах. После добавления новых файлов к кэшу при выполнении процессов очистки и обнаружения выявляются новые файлы, после чего обновляется карта экземпляров в базе данных приложений службы PowerPivot. Процесс выполняет проверку сведений о кэшированных файлах в карте экземпляров ежедневно.
Проверка, действительно ли кэшированные файлы, список которых представлен в прикладной базе данных приложения службы PowerPivot, находятся на диске в ожидаемом месте. Если файл удален из файловой системы, то он будет удален из списка. Эта проверка выполняется ежедневно.
См. также