PowerBI的分析服务 [英] Analysis services with PowerBI

查看:70
本文介绍了PowerBI的分析服务的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在将PowerBI连接到前提的Analysis Services时遇到身份验证问题.我读到我们需要进行用户主体名称(UPN)映射,但是我没有域,Analysis Services在一个蔚蓝的虚拟机上.所以我的问题是,如果我确实配置对Analysis Services的HTTP访问,那将是与PowerBI一起使用的解决方案吗?PowerBI是否可以连接到Analysis Services HTTP端点?

谢谢

解决方案

到目前为止,无法通过Power BI Service(具有计划的刷新功能)连接到AD域之外的服务器上托管的SSAS.在导入或DirectQuery模式下都无法使用.

Power BI Desktop

在Power BI Desktop中(编写报告时),可以通过具有基本身份验证的MSMDPUMP接口通过HTTP(S)对SSAS的访问使用导入模式.

当您在SSAS上的帐户名和密码与在运行Power BI Desktop的计算机上登录的帐户名和密码相同时,甚至可以将DirectQuery模式与直接(而非HTTP)连接到SSAS一起使用.或者,您可以使用Windows凭据管理器来设置SSAS主机的凭据.

Power BI服务

将报表发布到Power BI Service时,这些方法都不起作用.您无法直接刷新数据集,也无法通过本地数据网关刷新它.

可能的解决方案

  1. 使用Active Directory

您可以为SSAS服务器创建单独的AD环境.它不必与用于登录Power BI Service的与Azure AD租户同步的AD域相同.只是必须是AD.然后,您可以直接在此SSAS服务器上安装本地数据网关,并将其添加到Power BI Service环境中.然后,您必须为此网关添加SSAS连接,并将Power BI用户映射到SSAS AD用户.然后,计划的刷新功能应在导入模式下通过此本地数据网关工作.我不确定DirectQuery.

  1. 查询代理(仅适用于MDX查询)

如果您的使用场景仅需要SSAS实例中的一些数据,则也许可以通过使用MDX查询来获取数据.如果是这种情况,那么您可以部署并使用以ASP.NET编写的我简单的SSAS查询代理应用程序.

https://github.com/jmarsik/SSASQueryProxy

我是该应用程序的作者,但这不应该是一个问题,它是开源的,在这种情况下可以提供部分帮助.对于那些希望Power BI Service功能(主要是从移动设备进行访问和自动刷新)的客户在其托管的SSAS实例(AD域之外)中拥有的数据子集的客户,我已经将其用于一些最简单的仪表板中.>

I got authentication problems while connecting PowerBI to Analysis services on premise . I read that we need to do User Principal Name (UPN) mapping but i do not have a domain , Analysis services is on an azure virtual machine . So my question is , if i do configure HTTP Access to Analysis services would that be a solution that works with PowerBI ? Is it possible for PowerBI to connect to the Analysis services HTTP end point ?

Thanks

解决方案

As of now it's not possible to connect to SSAS hosted on a server outside of your AD domain from Power BI Service (with scheduled refresh functionality). It doesn't work in import nor DirectQuery mode.

Power BI Desktop

From Power BI Desktop (when authoring a report) it's possible to use import mode with HTTP(S) access to SSAS through MSMDPUMP interface with Basic authentication.

It's even possible to use DirectQuery mode with direct (not HTTP) connection to SSAS, when the name and password of your account on SSAS and account you are logged in on computer running Power BI Desktop are the same. Or you can use Windows Credential Manager to set the credentials for SSAS host.

Power BI Service

None of those ways work when you publish your report to Power BI Service. You cannot refresh your dataset directly and you cannot refresh it through On-premise Data Gateway.

Possible solutions

  1. Use Active Directory

You can create separate AD environment for your SSAS server. It doesn't have to be the same AD domain that is synced with Azure AD tenant that you use for logging into Power BI Service. It just has to be AD. Then you can install On-premise Data Gateway directly on this SSAS server and add it to your Power BI Service environment. Then you have to add SSAS connection for this gateway and map Power BI users to SSAS AD users. Then the scheduled refresh functionality should work through this On-premise Data Gateway in import mode. I'm not entirely sure about DirectQuery.

  1. Query proxy (only for MDX queries)

If your usage scenario needs only some data from your SSAS instance, maybe it will be possible to get the data by using MDX queries. If that's the case, then you can deploy and use my simple SSAS query proxy application written in ASP.NET.

https://github.com/jmarsik/SSASQueryProxy

I'm an author of this application, but it shouldn't be a problem, it's open source and it partially helps in this situation. I have used it for a few mostly simple dashboards for customers that wanted Power BI Service functionality (mainly access from mobile devices and automated refresh) for subset of the data they had in their hosted SSAS instances (outside of their AD domains).

这篇关于PowerBI的分析服务的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆