Share via


可以使用 SQL Server“Denali”PowerPivot 模型作为 PerformancePoint 2010 数据源

原文发布于 2011 年 12 月 22 日(星期四)

SQL Server Denali 已可公开下载,一些人试图使用它创建 PowerPivot 模型来作为 PerformancePoint 2010 的数据源。为什么不行呢?如果在 Analysis Services 数据源的数据源连接字符串中指定对 PowerPivot 模型的引用,PerformancePoint 是可以正常运行的。

问题

但是,几乎每个积极探索的用户都明智地指出,在使用基于 Denali RC0 的 PowerPivot 工作簿尝试该方案时,根本行不通。导致该问题的原因有多种,我将在下文中说明。事件日志中显示的错误指出,安装的现有提供程序版本太低。如果运行的是标准 SharePoint 2010 SP1 安装,事实确实如此。大多数人看到了如下错误:

异常详细信息: Microsoft.AnalysisServices.AdomdClient.AdomdUnknownResponseException: 不支持的数据格式: application/vnd.ms-excel.12

幸好有解决方法。

解决方法

要使该方案可行,最简单的方法是在 SharePoint 场中安装 ADOMD.Net(版本 10.5)数据提供程序。要获取该数据提供程序,请从 SQL Server 2008 R2 SP1 功能包下载(确保下载的版本适合您的服务器体系结构)。该提供程序的版本 10.5 与新版本 11.0 向后兼容。因为版本 10.5 是次要版本,所以将覆盖版本 10.0 提供程序,版本 10.0 是 PerformancePoint 在运行时查找的主要版本。后一概念解释了开始安装时安装程序引发的警报。继续操作并单击“是”(Yes)。

详细信息

在这里,我以 1M 的服务器场为例。SharePoint 的必备组件安装程序同时安装 ADOMD.Net 的 2005 和 2008 版本。这可以确保 Analysis Services 数据连接可立即正常工作。如果查看 SharePoint 服务器上的“添加/删除程序”,您会看到提供程序版本。版本 10.1 是 PerformancePoint 连接到 PowerPivot 工作簿(如果使用它作为数据源)时使用的版本。

安装 SQL Server Denali 时,它将安装版本 11.0 ADOMD 数据提供程序。通过查看服务器上的程序集列表,您也可以看到该版本。

问题是没有任何策略告诉请求使用最新版本的提供程序,PerformancePoint 专门查找主要版本 10。因此,实际情况是版本 11.0 虽已安装就绪,但毫无用处。然而,如果安装 ADOMD 客户端版本 10.5,问题就可以迎刃而解,因为该版本与最新的 PowerPivot 模型兼容,PerformancePoint 的要求也可以得到满足,因为它可以找到预期的版本 10。与并行存在的提供程序主要版本不同,次要版本相互覆盖,这就是即使在您使用版本 10.5 覆盖版本 10.1 之后 PerformancePoint 仍可找到正确版本的原因。因此,安装 SQL Server 2008 R2 SP1 更新后,如果查看“添加/删除程序”中的列表,您会看到下面的内容:

更新提供程序后,PerformancePoint 应该能够连接到 PowerPivot 工作簿,从而达到预期效果。

最后还要说明几点。首先,请注意,根据 PerformancePoint 的解释,多维数据集的名称现在称为“模型”。您可能还记得,对于 PowerPivot 2010 模型来说,它称为“沙盒”。其次,大多数发布的文档指出,需要向 PerformancePoint 连接字符串添加 PROVIDER 属性,如下所示:PROVIDER=MSOLAP;DATA SOURCE=https://contoso/Documents/PowerPivot_Sample.xlsx。该字符串有点冗余;无需设置 provider 属性,因为提供程序是 adomd.net。用户无需指定 MSOLAP,adomd.net 即会创建正确的数据访问对象以连接到数据源。

Kevin Donovan
Office BI 团队的项目经理

这是一篇本地化的博客文章。请访问 You Can Use SQL Server "Denali" PowerPivot Models as PerformancePoint 2010 Data Sources 以查看原文