以 excel 作为前端的分析服务 - 是不是有可能获得 powerpivot 提供的更好的 UI

Posted

技术标签:

【中文标题】以 excel 作为前端的分析服务 - 是不是有可能获得 powerpivot 提供的更好的 UI【英文标题】:Analysis Services with excel as front end - is it possible to get the nicer UI that powerpivot provides以 excel 作为前端的分析服务 - 是否有可能获得 powerpivot 提供的更好的 UI 【发布时间】:2010-05-17 11:08:32 【问题描述】:

我一直在研究 PowerPivot,并得出结论,对于“自助式 BI”和多维数据集的临时构建,它有其用途。我特别喜欢使用 PowerPivot 获得的增强 UI,而不仅仅是使用连接到分析服务数据源的数据透视表。

然而似乎将 PowerPivot 连接到现有分析服务多维数据集并不是“组织 BI”的解决方案。一次将数百万行输入到 Excel 中并不总是可取的,而且 PowerPivot 和分析服务之间的接口在我看来非常糟糕。

因此问题是现有的分析服务解决方案能否在使用 powerpivot 作为设计工具的情况下获得 power pivot 带来的增强的 ui 功能?如果 powerpivot 的目标是自助服务/个人 BI,那么它的 UI 比更大/更昂贵的分析服务解决方案更好,这似乎很奇怪。

【问题讨论】:

我还对如何将 PowerPivot 的一些更好的 UI 功能引入 ASP.NET 应用程序(无需与 PowerPivot 集成所需的 Sharepoint Enterprise 许可)非常感兴趣。动态过滤器/切片器的功能,和/或为用户提供一些从维度中挑选和选择字段的能力。这两个功能都非常好,或者/或者会很酷。为此添加赏金。 我用来节省前端 excel 文件空间的解决方案是在数据透视表的选项中选中“使用文件保存数据”选项。您将能够删除源数据(数百万行),并保持数据透视表不变。 +1 我想要 Excel 中 SSAS 中的数据透视表。我搜索了网络,发现最好的是***.com/questions/4866878/…,但它已于 2009 年 1 月 5 日停用。SQL2012 看起来是最好的选择。 - 至今。我将继续审查 3rd 方控件,看看是否有任何可以从数据透视表生成 MDX 查询。 【参考方案1】:

虽然我同意 PowerPivot 的 UI 比通过标准数据透视表使用 Analysis Services 更好,但通过 Excel 客户端的 PowerPivot 在尝试使用它来代替 Analysis Services 时存在一些非常糟糕的缺点。

您必须将所有行下载到电子表格中才能“刷新”数据。在大型数据仓库中,这相当于让用户直接对您的数据库运行 SELECT * 查询。这对用户来说速度非常慢,并且对您的服务器来说资源使用成本很高。

    很容易有人故意或无意地以不安全的方式带着您的整个数据仓库走出办公室。哎哟!

    最终用户机器需要非常强大。我尝试在我们的标准公司机器构建上使用带有几个小表(500 万行或更少)的 PowerPivot,但它没有足够的内存来刷新 PowerPivot。我认为在整个企业中部署 PowerPivot 的唯一方法是将所有分析机器升级到 64 位 Windows 7,至少有 6GB 到 8GB 的​​ RAM。虽然这在小型组织中是可行的,但在大型企业中却不是一个合理的解决方案。

    如果您分发 PowerPivot 以不受限制地访问您的数据仓库,您将无法获得任何关于人们如何使用您的数据的良好指标。是的,您可能有关于人们点击刷新按钮的频率的指标,并且您可能能够记录他们正在查询哪些表,但是除非您直接审核他们的电子表格,否则您不会看到他们如何使用数据。即便如此,你也只会得到他们的最终结果——而不是他们如何获得最终结果的路径。

    PowerPivot 生成非常非常大的文件。即使有人将数据向下钻取到总数据的一小部分,仍然难以与其他人共享文件,因为大型 PowerPivot 文件通常超过最小 Exchange 服务器文件大小限制。尽管 Analysis Services 文件从来没有遇到过这个问题,但我在我的组织中遇到过这个问题。

    PowerPivot 没有很好的安全模型。当然,您可以限制谁第一次访问数据,但一旦数据在电子表格中,您就不能限制它。如果用户无权访问基础多维数据集,Analysis Services 会阻止用户对电子表格进行更改。使用 PowerPivot 破坏您最有价值的业务数据的安全性非常容易。

    PowerPivot 目前无法针对非常大的数据源进行扩展。我有几个数十亿的事实表,PowerPivot 无法下载这些事实表,除非我将它们预先聚合到几亿行。 PowerPivot 非常适合小型数据仓库,但不能优雅地扩展到大型数据仓库。

请注意,我的上述 cmets 不适用于通过 SharePoint 的 PowerPivot。我还没有尝试过 SharePoint 集成产品,但我看到的 SharePoint 版本产品的文档和演示似乎已经解决了上述许多问题。

尽管有上述所有 cmets,但如果您的数据仓库非常小或不成熟,PowerPivot 可以替代 Analysis Services。如果您最大的事实表有几百万行,那么如果您是一个 1-2 人的 BI 团队,那么构建和维护数据仓库的开销可能并不划算。对于没有专门的 BI 团队并且只有少数 Excel 垃圾分析师的部门来说,PowerPivot 可能是一个很棒的新功能。使用 PowerPivot 将来自不同数据源的虚拟数据集市放在一起并不需要太多复杂性。但是,如果您想构建一个真正专业的、安全、可扩展且高度可管理的数据仓库,那么我建议您在 Analysis Services 中构建多维数据集,并使用 Excel 或第三方供应商工具连接到 Analysis Services OLAP 多维数据集。

【讨论】:

【参考方案2】:

现在 SQL Server 2012 已发布,您可能想看看使用一个或多个 SSAS BISM 模型,而不是 PowerPivot。您可以与 PowerPivot 互操作,但现在可以使用 SSDT(在 Visual Studio 中)构建模型,并且可以更好地控制安全性,并且可以托管在专用服务器上。

我将在今年春季和夏季在线和现场展示 BISM - 这是我在 slideshare 上的最新演示文稿 - http://www.slideshare.net/lynnlangit/sql-2012-bism

现在 Office 2013 预览版已发布,您可以在 Excel (PowerPivot) 中查看 PowerView,而无需使用 SharePoint。 MSFT 何时会移除对 Silverlight 的依赖(即迁移到 html5)还有待观察。我在 9 月获得的 Office 2013 预览版仍然包含需要 Silverlight 的 PowerPivot。我期待着基于 HTML5 的版本。 Here's Jen Underwood 的甲板,让您了解 PowerView 的外观。

【讨论】:

+1 这很方便,SQL2012 与 2008 相比,与 2005 相比有了很大的改进。【参考方案3】:

WebPivotTable是一个纯javascript数据透视表和数据透视图组件,可用于透视csv数据和各种OLAP多维数据集,包括microsoft SSAS。它模仿 Excel 的所有功能,但基于 Web,不依赖任何其他插件、驱动程序、服务器端组件。它可以很容易地集成到任何 Web 应用程序和网站中。

这里是Demo 和Documents

【讨论】:

【参考方案4】:

我知道 Powerpivot 是 Excel 2010 的免费下载,但为了获得更好的桌面客户端体验,您应该查看 ProClarity 客户端。

【讨论】:

【参考方案5】:

还值得一看 Strategy Companion (http://www.strategycompanion.com) 的 Analyzer。 我发现它提供了一个基于 Web 的流畅界面,用于在数据透视表(和图表)中进行切片和切块,比 Excel 2007 提供的界面更好。

【讨论】:

【参考方案6】:

在微软收购 ProClarity 并终止该产品之前,ProClarity 是最佳选择。一些功能正在进入其他工具,但产品本身不再受支持。 Panorama 或 Tableau 可能是最好的第 3 方选项。

【讨论】:

【参考方案7】:

这是迄今为止我发现的最好的最新版本:http://www.varigence.com/products/vivid/videos

编辑:http://silverlight.galantis.com 也是一个可能的解决方案 - WPF 版本将于下个月发布,可用于 VSTO 插件。

【讨论】:

以上是关于以 excel 作为前端的分析服务 - 是不是有可能获得 powerpivot 提供的更好的 UI的主要内容,如果未能解决你的问题,请参考以下文章

无法通过 excel 连接到分析服务

SqlServerDsc 中是不是有可用于配置 ALTER TRACE 服务器权限的资源?

第1370期 验证码前端性能分析及优化实践

mathematica 中是不是有可用于定义输入类型的函数头?

从服务端生成Excel电子表格(Node.js+SpreadJS)

使用 Excel 作为 Access 数据库的前端(使用 VBA)