接着上篇文章我们接着谈谈Power BI 中的数据刷新(二)

查看数据基础结构依赖项

无论采用哪种存储模式,都必须能够访问基础数据源,否则将无法成功刷新数据。 有三种主要的数据访问方案:

  • 数据集使用驻留在本地的数据源
  • 数据集使用云中的数据源
  • 数据集使用来自本地源和云源的数据

连接到本地数据源

如果数据集使用 Power BI 无法通过直接网络连接访问的数据源,则必须先为此数据集配置网关连接,然后才能启用刷新计划或执行按需数据刷新。 有关数据网关及其工作原理的详细信息,请参阅什么是本地数据网关?

你有以下选择:

  • 选择具有所需数据源定义的企业数据网关
  • 部署个人数据网关

备注
可以在管理数据源 - 导入/计划刷新一文中找到需要数据网关的数据源类型列表。

使用企业数据网关

Microsoft 建议使用企业数据网关(而不是个人网关)将数据集连接到本地数据源。 请确保正确配置网关,这意味着网关必须具有最新的更新和所有必需的数据源定义。 数据源定义可为 Power BI 提供给定源的连接信息,包括连接终结点、身份验证模式和凭据。 有关在网关上管理数据源的详细信息,请参阅管理数据源 - 导入/计划刷新。

如果你是网关管理员,则将数据集连接到企业网关相对来说比较简单。 必要时,可以使用管理员权限立即更新网关并添加缺少的数据源。 事实上,可以直接从数据集设置页面向网关添加缺少的数据源。 展开切换按钮以查看数据源,然后选择“添加到网关”链接,如以下屏幕截图所示。 但如果你不是网关管理员,则必须联系网关管理员添加所需的数据源定义。

备注
仅网关管理员可将数据源添加到网关。 此外,确保网关管理员将你的用户帐户添加到有权使用数据源的用户的列表。 数据集设置页仅允许选择你有权使用其匹配数据源的企业网关。

请确保将正确的数据源定义映射到数据源。 如上面的屏幕截图所示,网关管理员可在连接到同一数据源的单个网关上创建多个定义,其中每个定义使用不同的凭据。 如示例中所示,销售部门中的数据集所有者会选择 AdventureWorksProducts-Sales 数据源定义,而支持部门中的数据集所有者会将数据集映射到 AdventureWorksProducts-Support 数据源定义。 如果数据源定义的名称不直观,请联系网关管理员来明确要选择哪个定义。

备注
一个数据集只能使用一个网关连接。 换句话说,不能跨多个网关连接访问本地数据源。 因此,必须将所有必需的数据源定义添加到同一网关。

部署个人数据网关

如果你无权访问企业数据网关,并且你是唯一管理数据集的人员,因此无需与其他人共享数据源,则可以在个人模式下部署数据网关。 在“网关连接”部分的“未安装个人网关”下,选择“立即安装” 。 如本地数据网关(个人模式)中所述,个人数据网关存在若干限制。

与企业数据网关不同,你无需向个人网关添加数据源定义, 而是使用数据集设置中的“数据源凭据”部分来管理数据源配置,如以下屏幕截图所示。

备注
个人数据网关不支持 DirectQuery/LiveConnect 模式下的数据集。 数据集设置页面可能会提示你安装它,但如果你只有个人网关,则无法配置网关连接。 请确保安装企业数据网关来支持这些类型的数据集。

访问云数据源

如果 Power BI 可以与云数据源(如 Azure SQL DB)建立直接网络连接,则使用该源的数据集不需要数据网关。 相应地,可以使用数据集设置中的“数据源凭据”部分来管理这些数据源的配置。 如以下屏幕截图所示,你无需配置网关连接。

在同一源查询中访问本地源和云源

数据集可以从多个源获取数据,这些源可以驻留在本地或云中。 但是,如前所述,一个数据集只能使用一个网关连接。 虽然云数据源不一定需要网关,但如果数据集在单个糅合查询中同时连接到本地源和云源,则需要网关。 在此方案中,Power BI 也必须使用网关来访问云数据源。 下图阐释了此类数据集如何访问其数据源。

备注
如果数据集使用不同的糅合查询连接到本地源和云源,则 Power BI 使用网关连接访问本地源,使用直接网络连接访问云源。 如果糅合查询合并或追加来自本地源和云源的数据,则即使是云源,Power BI 也会切换为使用网关连接。

Power BI 数据集依靠 Power Query 来访问和检索源数据。 以下糅合列表显示了合并来自本地源和云源的数据的基本查询示例。

Let

OnPremSource = Sql.Database("on-premises-db", "AdventureWorks"), CloudSource = Sql.Databases("http://cloudsql.database.windows.net", "AdventureWorks"), TableData1 = OnPremSource{[Schema="Sales",Item="Customer"]}[Data], TableData2 = CloudSource {[Schema="Sales",Item="Customer"]}[Data], MergedData = Table.NestedJoin(TableData1, {"BusinessEntityID"}, TableData2, {"BusinessEntityID"}, "MergedData", JoinKind.Inner) in

MergedData

可通过以下两种方式来配置数据网关,以支持合并或追加来自本地源和云源的数据:

  • 除本地数据源外,将云源的数据源定义也添加到数据网关。
  • 启用复选框“允许用户的云数据源通过此网关群集刷新”。

如果启用“允许用户的云数据源通过网关配置中的此网关群集刷新”复选框(如上面的屏幕截图所示),则 Power BI 可使用用户在数据集设置中的“数据源凭据”下为云源定义的配置 。 这有助于降低网关配置开销。 但是,如果希望更好地控制网关建立的连接,则不应启用此复选框。 在这种情况下,必须向网关添加要支持的每个云源的显式数据源定义。 也可以启用该复选框,并向网关添加云源的显式数据源定义。 在这种情况下,网关会使用所有匹配源的数据源定义。

配置查询参数

使用 Power Query 创建的糅合或 M 查询的复杂程度可能不同,既有可能是简单的步骤,也有可能是复杂的参数化构造。 以下列表显示了一个小型糅合查询示例,它使用两个名为 SchemaName 和 TableName 的参数来访问 AdventureWorks 数据库中的给定表。

let

Source = Sql.Database("SqlServer01", "AdventureWorks"),

TableData = Source{[Schema=SchemaName,Item=TableName]}[Data] in

TableData

备注
查询参数仅适用于导入模式数据集。 DirectQuery/LiveConnect 模式不支持查询参数定义。

若要确保参数化数据集访问正确的数据,必须在数据集设置中配置糅合查询参数。 也可以使用 Power BI REST API 以编程方式更新参数。 以下屏幕截图显示了一个用户界面,可在其中配置使用上述糅合查询的数据集的查询参数。

刷新和动态数据源

动态数据源是这样一种数据源,其中的部分或所有信息在 Power Query 运行查询之后才能确定是否需要连接,因为数据是在代码中生成的或从其他数据源返回的。 示例包括:SQL Server 数据库的实例名称和数据库;CSV 文件的路径;或 Web 服务的 URL。

在大多数情况下,无法在 Power BI 服务中刷新使用动态数据源的 Power BI 数据集。 有几种例外情况,可以在 Power BI 服务中刷新动态数据源,例如,将 RelativePath 和查询选项与 Web.Contents M 函数结合使用时。 也可以刷新引用 Power Query 参数的查询。

若要确定是否可以刷新动态数据源,请在 Power Query 编辑器中打开“数据源设置”对话框,然后选择“当前文件中的数据源” 。 在出现的窗口中,查找以下警告消息,如下图所示:

复制

Some data sources may not be listed because of hand-authored queries.

如果该警告显示在出现的“数据源设置”对话框中,则会显示无法在 Power BI 服务中刷新的动态数据源。

配置计划刷新

配置数据刷新时,在 Power BI 和数据源之间建立连接是目前为止最具挑战性的任务。 其余步骤(包括设置刷新计划和启用刷新失败通知)相对来说比较简单。 有关分步说明,请参阅操作指南配置计划刷新。

设置刷新计划

可在“计划刷新”部分定义数据集的刷新频率和时间段。 如前所述,如果数据集位于共享容量上,则可以配置每天最多 8 个时间段,如果位于 Power BI Premium 上,则可以配置每天最多 48 个时间段。 以下屏幕截图显示了时间间隔为 12 小时的刷新计划。

配置完刷新计划后,数据集设置页面会通知你下一个刷新时间,如上面的屏幕截图所示。 如果要加快数据刷新速度以执行网关和数据源配置测试等操作,请使用导航窗格的数据集菜单中的“立即刷新”选项进行按需刷新。 按需刷新不会影响下一计划的刷新时间。

另请注意,配置的刷新时间可能不是 Power BI 启动下一个计划进程的确切时间。 Power BI 会尽最大努力启动计划刷新。 目标是在计划时间段的 15 分钟内启动刷新,但如果服务无法更快地分配所需资源,则可能会延迟最多一小时。

备注
Power BI 会在连续四次失败后或当服务检测到需要配置更新的不可恢复错误(例如无效或过期的凭据)时停用刷新计划。 无法更改连续失败阈值。

获取刷新失败通知

默认情况下,Power BI 通过电子邮件将刷新失败通知发送给数据集所有者,以便在发生刷新问题时,所有者可以及时采取行动。 当服务因连续失败而禁用你的计划时,Power BI 也会向你发送通知。 Microsoft 建议将复选框“向我发送刷新失败通知电子邮件”保留为启用状态。

也可以使用“刷新失败时,向这些用户发送电子邮件”文本框来指定其他收件人。 除数据集所有者以外,指定收件人也会接收刷新失败通知。 可以是在你度假时处理你数据集的同事。 也可以是为你的部门或组织处理刷新问题的支持团队的电子邮件别名。 向除数据集所有者以外的其他人发送刷新失败通知有助于确保及时察觉和处理问题。

请注意,Power BI 不仅会在刷新失败时发送通知,还会在服务因数据集不活动而暂停计划刷新时发送通知。 两个月后,如果没有用户访问过基于数据集生成的任何仪表板或报表,Power BI 会将数据集视为不活动。 在这种情况下,Power BI 会向数据集所有者发送一封电子邮件,指出服务已暂停数据集的刷新计划。 有关此类通知的示例,请参阅以下屏幕截图。

若要恢复计划刷新,请访问使用此数据集生成的报表或仪表板,或使用“立即刷新”选项手动刷新数据集。

检查刷新状态和历史记录

除了失败通知之外,最好定期检查数据集是否存在刷新错误。 一种快速方法是查看工作区中的数据集列表。 有错误的数据集会显示一个小警告图标。 选中警告图标可获取附加信息,如以下屏幕截图所示。 有关解决特定刷新错误的详细信息,请参阅刷新方案故障排除。

警告图标有助于指示当前的数据集问题,但偶尔检查刷新历史记录也不失为一个好办法。 顾名思义,通过刷新历史记录可以查看过去同步周期的成功或失败状态。 例如,网关管理员可能已更新一组过期的数据库凭据。 如以下屏幕截图所示,刷新历史记录显示受影响的刷新何时再次开始工作。

备注
可以在数据集设置中找到显示刷新历史记录的链接。 也可以使用 Power BI REST API 以编程方式检索刷新历史记录。 通过使用自定义解决方案,可以集中监视多个数据集的刷新历史记录。

自动页面刷新

自动页面刷新针对报表页面执行,使用此功能,报表作者可以为页面中仅在使用页面时处于活动状态的视觉对象设置刷新间隔。 自动页面刷新仅适用于 DirectQuery 数据源。 最小刷新间隔取决于要在其中发布报表的工作区的类型,以及 Premium 工作区和嵌入工作区的容量管理设置。

有关自动页面刷新的详细信息,请参阅自动页面刷新一文。

最佳做法

若要确保报表和仪表板使用当前数据,定期检查数据集的刷新历史记录是可采用的最重要的最佳做法之一。 一旦发现问题,请及时解决,并在必要时跟进数据源所有者和网关管理员。

此外,请考虑以下建议,以便为数据集建立和维护可靠的数据刷新过程:

  • 将刷新安排在较空闲的时间进行,特别是当数据集位于 Power BI Premium 上时。 如果在更宽的时间范围内分配数据集的刷新周期,则可以帮助避开可能过度占用可用资源的高峰时间段。 延迟启动刷新周期意味着资源过载。 如果 Premium 容量完全耗尽,Power BI 甚至有可能跳过刷新周期。
  • 记住刷新限制。 如果源数据频繁更改或数据量很大,并且源中增加的负载以及对查询性能的影响是可接受的,则考虑使用 DirectQuery/LiveConnect 模式而不是导入模式。 避免不断刷新导入模式数据集。 但是,如在 Power BI Desktop 中使用 DirectQuery 所述,DirectQuery/LiveConnect 模式存在一些限制,例如返回数据的行数限制为一百万行,运行查询的响应时间限制为 225 秒。 这些限制可能会导致你仍然使用导入模式。 对于非常大的数据量,请考虑使用 Power BI 中的聚合。
  • 确保数据集刷新时间不超过最大刷新持续时间。 使用 Power BI Desktop 检查刷新持续时间。 如果需要超过 2 小时,请考虑将数据集移至 Power BI Premium。 数据集可能无法在共享容量上刷新。 另考虑对大于 1GB 或刷新时间长达几小时的数据集使用 Power BI Premium 中的增量刷新。
  • 优化数据集以仅包括报表和仪表板使用的表和列。 优化糅合查询,如有可能,避免使用动态数据源定义和高成本的 DAX 计算。 特别是避免使用测试表中每一行的 DAX 函数,因为这种函数的内存消耗和处理开销非常高。
  • 应用与 Power BI Desktop 中相同的隐私设置,确保 Power BI 可以生成有效的源查询。 记住,Power BI Desktop 不会发布隐私设置。 发布数据集后,必须手动重新应用数据源定义中的设置。
  • 限制仪表板上视觉对象的数量,尤其是在使用行级别安全性 (RLS) 时。 如本文前面所述,过多的仪表板磁贴会显著增加刷新持续时间。
  • 使用可靠的企业数据网关部署将数据集连接到本地数据源。 如果发现与网关相关的刷新故障(例如网关不可用或过载),请让网关管理员向现有群集添加其他网关或部署新群集(纵向扩展与横向扩展),直至问题得到解决。
  • 为导入数据集和 DirectQuery/LiveConnect 数据集使用不同的数据网关,以使计划刷新期间的数据导入不影响基于 DirectQuery/LiveConnect 数据集(通过每次用户交互查询数据源)的报表和仪表板的性能。
  • 确保 Power BI 可以向你的邮箱发送刷新失败通知。 垃圾邮件筛选器可能会阻止电子邮件或将其移至你可能不会立即注意到的单独文件夹中。

文章来源:Microsoft Power BI官网
编辑翻译:Power BI学堂

11300001数据集配置错误_Power BI 中的数据刷新(二)相关推荐

  1. com.fr.general.data.TableDataException:错误代码:11300001 数据集配置错误

    帆软开发过程中,发现com.fr.general.data.TableDataException:错误代码:11300001 数据集配置错误 原因:数据集配置都正确,最终检查发现缺少 表的权限.gra ...

  2. android listview 数据同步,android中ListView数据刷新时的同步方法

    本文实例讲述了android中ListView数据刷新时的同步方法.分享给大家供大家参考.具体实现方法如下: public class Main extends BaseActivity { priv ...

  3. power bi 实时_Power BI中的实时流

    power bi 实时 The concept of the IOT (Internet of Things) is that every object that you might think of ...

  4. power bi图表_Power BI中的图表类型概述

    power bi图表 In this article, I am going to give an overview of the most widely used chart types in Po ...

  5. 行级共享锁和行级排他锁_Power BI中的行级安全性简介

    行级共享锁和行级排他锁 Analyzing data with Power BI has always been fascinating to me. With ever-growing data c ...

  6. 切片器可以设置日期格式?_Power BI 中的切片器

    何时使用切片器 在要完成以下操作时,切片器非常有用: 在报表画布上显示常用或重要的筛选器,用以简化访问. 更轻松地查看当前筛选的状态,而无需打开下拉列表. 按数据表中不需要的和隐藏的列进行筛选. 通过 ...

  7. power bi 中计算_Power BI中的期间比较

    power bi 中计算 Just recently, I've come across a question on the LinkedIn platform, if it's possible t ...

  8. power bi示例文件_Power BI桌面问答数据交互示例

    power bi示例文件 The Q&A feature in Power BI desktop provides a way to move towards Artificial Intel ...

  9. java实现k-means算法(用的鸢尾花iris的数据集,从mysq数据库中读取数据)

    k-means算法又称k-均值算法,是机器学习聚类算法中的一种,是一种基于形心的划分方法,其中每个簇的中心都用簇中所有对象的均值来表示.其思想如下: 输入: k:簇的数目: D:包含n个对象的数据集. ...

最新文章

  1. 深度CTR预估模型的演化之路2019最新进展
  2. FAQ系列 | 如何保证主从复制数据一致性(转)
  3. 初识Redux-Saga
  4. 【c语言】测量字符串长度
  5. [BZOJ4399]魔法少女LJJ
  6. DCMTK学习之读取DcmDataset对应tag的值
  7. 前端学习之day02-CSS基础
  8. 响应式编程知多少 | Rx.NET 了解下
  9. Flink ProcessFunction 介绍使用
  10. cognos报表导出excel_有了这个报表工具,一键生成自定义的各种报表,还可以导出Excel...
  11. 常见批处理作业调度算法
  12. vue js代码混淆加密、压缩
  13. SDL2.0超简单入门 100行代码实现播放wav声音文件
  14. 计算力矩——计算关节力矩以平衡端点力和力矩
  15. nand2tetris 布尔函数和和门逻辑路线图
  16. Human Pose Estimation浅述
  17. ICC2: secondary pg pin的作用与连接
  18. 超低延迟传输网络架构在元宇宙场景的应用
  19. 光标怎么设置sap_设置placeholder光标
  20. ASE:空间分析、空间统计及空间计量经典论文系列推文概述

热门文章

  1. 05-树9 Huffman Codes
  2. 跳转引用、禅模式...VS Code 中 11 个快捷键/操作,让你的效率与舒适度翻倍!
  3. 前端验证码绘制(canvas)
  4. 【李宏毅2020 ML/DL】P58 Unsupervised Learning - Neighbor Embedding | LLE, t-SNE
  5. 【操作系统/OS笔记15】死锁的系统模型,死锁的处理办法,银行家算法与死锁检验算法
  6. Lua基础之coroutine(协程)
  7. RHEL6_yum本地源配置
  8. C#运行时的相互关系
  9. 谈谈未来简书首页拒稿界面的设计思路
  10. 计算机专业课教学,计算机专业课教学的原则和方法