Модели PowerPivot в SQL Server "Denali" можно использовать в качестве источников данных PerformancePoint 2010

Исходная статья опубликована в четверг, 22 декабря 2011 г.

После появления SQL Server Denali в открытом доступе многие люди пытались использовать его для создания моделей PowerPivot в качестве источников данных для PerformancePoint 2010. Почему бы нет? PerformancePoint отлично работает в сценарии, когда в строке подключения к источнику данных служб Analysis Services указывается ссылка на модель PowerPivot.

Проблема

Но почти каждый из этих смелых пользователей отмечал, что при использовании того же сценария с книгой PowerPivot версии Denali RC0 возникала какая-либо фундаментальная ошибка. Для этого имеется несколько причин, которые я собираюсь рассмотреть ниже. Ошибка, которая заносится в журнал событий, указывает, что существующий установленный поставщик устарел. И это так при использовании стандартной установки SharePoint 2010 с пакетом обновления 1 (SP1). Большинство людей сталкиваются со следующей ошибкой:

Сведения об исключении: Microsoft.AnalysisServices.AdomdClient.AdomdUnknownResponseException: Неподдерживаемый формат данных: application/vnd.ms-excel.12

Однако у этой проблемы есть решение.

Решение

Самым простым способом заставить этот сценарий работать является установка поставщика данных ADOMD.Net (версия 10.5) в ферме SharePoint. Его можно получить в составе Пакета дополнительных компонентов для SQL Server 2008 R2 с пакетом обновления 1 (SP1) (убедитесь, что загружаете версию, подходящую для используемой серверной архитектуры). Версия 10.5 этого поставщика обратно совместима с новой версией 11.0. А поскольку это дополнительная версия, она заменит поставщик версии 10.0, которая является главной версией, которую PerformancePoint ищет во время выполнения. Это объясняет предупреждение, которое выводится программой установки при начале установки. Смело продолжайте и нажмите кнопку "Да" (Yes).

Подробности

Здесь я буду использовать пример фермы размером 1 МБ. Программа установки необходимых компонентов SharePoint установит поставщик ADOMD.Net обеих версий: 2005 и 2008. Это обеспечивает беспроблемную работу подключений к данным служб Analysis Services. В оснастке добавления и удаления программ на сервере SharePoint показаны версии поставщика. Версия 10.1 будет использоваться PerformancePoint при подключении к книге PowerPivot, когда она используется в качестве источника данных.

При установке SQL Server Denali будет установлен поставщик ADOMD версии 11.0. Это также можно проверить, просмотрев список сборок на сервере.

Проблема состоит в том, что не существует правила, которое задает использование последней версии поставщика, а PerformancePoint специально ищет основную версию 10. Таким образом, в результате версия 11.0 остается на месте и никем не используется. Однако при установке клиента ADOMD версии 10.5 все работает, поскольку эта версия совместима с последними моделями PowerPivot, а PerformancePoint по-прежнему работает нормально, поскольку видит ожидаемую версию 10. В отличие от основных версий поставщика, которые могут существовать параллельно, дополнительные версии заменяют друг друга, поэтому PerformancePoint выбирает правильную версию, даже после замены версии 10.1 на 10.5. Таким образом, после установки обновления SQL Server 2008 R2 SP1 в оснастке добавления и удаления программ будет отображаться следующий список:

После обновления поставщика службы PerformancePoint не должны испытывать проблем с подключением к книге PowerPivot, чего можно было ожидать.

Здесь имеется пара замечаний. Во-первых, обратите внимание, что куб в PerformancePoint теперь носит название "Модель" (Model). Можно вспомнить, что для моделей PowerPivot 2010 он назывался "песочницей" (Sandbox). Во-вторых, в большей части опубликованной документации говориться о необходимости добавлять свойство PROVIDER в строку подключения PerformancePoint, например: PROVIDER=MSOLAP;DATA SOURCE=http://contoso/Documents/PowerPivot_Sample.xlsx. Эта строка избыточна — нет необходимости устанавливать значение свойства provider, поскольку поставщиком является adomd.net. А adomd.net самостоятельно создаст правильный объект доступа к данным, и пользователю не нужно будет указывать MSOLAP для подключения к источнику данных.

Кевин Донован (Kevin Donovan)
Руководитель программы, бизнес-аналитика Office

Это локализованная запись блога. Исходная статья находится по адресу: You Can Use SQL Server "Denali" PowerPivot Models as PerformancePoint 2010 Data Sources