zoukankan      html  css  js  c++  java
  • PowerBI

    官网教程
    高飞老师教程
     参考教程


    数据源

    在任何情况下,数据源都必须支持以下各项:

    日期列 - 表必须包含日期/时间或整数数据类型的日期列

    查询折叠 - 增量刷新适用于支持“查询折叠”的数据源

    时间限制

    无论是否使用增量刷新,Power BI Pro 数据集的刷新时间都限制在 2 小时内。 对于高级容量中的数据集,时间限制为 5 小时。 

    防止初始完全刷新超时

    为了防止超时,在将模型发布到服务之前,可以启动初始刷新操作。

    例:如何为 FactInternetSales 表定义增量刷新策略
    在将模型发布到服务之前,在 Power Query 编辑器中,向 ProductKey 列添加另一个筛选器,以筛选出任何非 0 的值。 这会有效地筛选出 FactInternetSales 表中的所有数据。

    在 Power Query 编辑器中单击“关闭并应用”,定义增量刷新策略,并保存模型后,我们将模型发布到服务。然后,在服务中对数据集运行初始刷新操作。

    FactInternetSales 表分区是根据策略创建的,但是没有数据被加载和处理,因为所有数据都被筛选掉了。初始刷新操作完成后,请返回 Power Query 编辑器,ProductKey 列上的其他筛选器已被删除。 在 Power Query 编辑器中单击“关闭并应用”并保存模型后,模型将不会再次发布,因为它将覆盖增量刷新策略设置,并在从服务执行后续刷新操作时强制对数据集执行完全刷新。


    配置增量刷新

    配置增量刷新是在 Power BI Desktop 中完成的。请注意以下几个方面:

    • 当发布到服务时,不能再次从 Power BI Desktop 发布同一模型。 重新发布将删除数据集中已有的所有分区和数据。 如果要发布到高级容量,可以通过开源 ALM 工具包或使用表格模型脚本语言 (TMSL) 来进行后续元数据架构更改。
    • 当发布到服务时,无法将数据集以 PBIX 格式下载回 Power BI Desktop。 由于服务中的数据集可能会变得很大,因此将数据集下载回来并在一般台式计算机中打开是不切实际的。

    创建参数

    在 Power BI Desktop 中配置增量刷新时,需要先创建两个名称为 RangeStart 和 RangeEnd(为保留名称且区分大小写)的 Power Query 日期/时间参数 。(必须是RangeStart 和 RangeEnd, 必须是日期/时间格式)

    筛选数据

    定义了 RangeStart 和 RangeEnd 参数后,你可以对表的日期列应用自定义日期筛选器。 单击“应用”后,你应用的筛选器会选择将被加载到模型中的数据子集。(日期列必须是日期/时间或整数数据类型)

    定义策略

    在应用筛选器并将数据子集加载到模型后,可以为表定义增量刷新策略。 将模型发布到服务后,服务将使用该策略来创建和管理表分区,并执行刷新操作。

    定义策略时,有三个必需的设置和两个可选设置:

    1 - 表

    “表”列表框默认为你在数据视图中选择的表。 使用滑块启用表增量刷新。 如果表的 Power Query 表达式不包括基于 RangeStart 和 RangeEnd 参数的筛选器,则会禁止切换。

    2 - 存储以下时间内的行: 过去

    这个必需的设置用于确定一个历史周期,在这个周期内的日期/时间的行被包含在数据集中,加上当前不完整的历史周期的行,加上直至当前日期和时间的刷新周期的行。

    3 - 刷新以下时间内的行: 过去

    这个必需的设置确定了增量刷新周期,日期/时间在此周期内的所有行都包含在刷新分区中,并在执行每次刷新操作时刷新。

    例如,如果将刷新周期指定为 10 天,则在每次刷新时,服务将覆盖 RangeStart 和 RangeEnd 参数,以便为日期/时间在 10 天内的行创建一个查询,其开始和结束时间依赖于当前日期和时间。 将刷新日期/时间在过去 10 天内直至当前刷新操作时间的行。 对于此类策略,服务中平均每日新增 10,000 行的 FactInternetSales 数据集表的每次刷新操作应刷新约 100,000 行。

    请确保指定一个时期,只包含可确保准确报告所需的最少行数。 如果为多个表定义策略,则必须使用相同的 RangeStart 和 RangeEnd 参数,即使为每个表定义了不同的存储和刷新周期也是如此。

    4 - 检测数据更改

    此设置是可选的。 10 天的增量刷新比 5 年的完全刷新更有效。 不过,刷新可以更有选择性。 选中“检测数据更改”选项后,可选择用于仅标识和刷新数据更改日期的日期/时间列。 此操作假定数据源中存在通常用于审核的列。 这不应与用于使用 RangeStart 和 RangeEnd 参数对数据进行分区的列相同。 将针对增量范围中的每个周期评估此列的最大值。 如果自上次刷新后未更改,则无需刷新周期。 在本例中,这可能会将增量刷新的天数从 10 天进一步减少到 2 天左右。

    当前的设计要求将用于检测数据更改的列保留并缓存到内存中。 以下技术可用于减少基数和内存占用量:

    • 刷新时仅保留此列的最大值(可能通过 Power Query 函数实现)。
    • 根据刷新频率要求,将精度降低到可接受的水平。
    • 请定义使用 XMLA 终结点来检测数据更改的自定义查询,并避免完全暂留列值。

    5 - 仅刷新全天

    此设置是可选的。 假设计划每天凌晨 4:00 运行刷新。 如果在午夜到凌晨 4:00 之间的四个小时内数据源表中出现了新数据行,则你可能不希望考虑这些数据。 对于某些天数而言,石油天然气行业的每日桶数等一些业务指标毫无意义。 再比如刷新财务系统中的数据,其中前一个月的数据在该月的第 12 个公历日获得批准。 可将刷新周期设置为 1 个月,并安排在该月的第 12 天运行刷新。 例如,选中此选项后,系统将在 2 月 12 日刷新 1 月份的数据。

    请注意,除非为非 UTC 时区配置了计划的刷新,否则服务中的刷新操作将在 UTC 时间运行,这可以决定有效日期和影响完整的周期。

    发布

    配置增量刷新策略后,可以将模型发布到服务。 发布完成后,可以对数据集执行初始刷新操作。

    对于发布到分配给高级容量的工作区的数据集,如果你认为数据集会超过 1 GB 或更大,则可以在服务中执行第一次刷新操作之前,启用较大的数据集存储格式,从而提高刷新操作的性能并确保数据集不会超出大小限制。

    刷新

    发布到服务后,对数据集执行初始刷新操作。 这应该是一个单独的(手动)刷新,便于你监视进度。 初始刷新操作可能需要很长时间才能完成。 必须创建分区,加载历史数据,生成或重新生成关系和层次结构等对象,并且计算对象也会被重新计算。

    后续刷新操作(单个或计划刷新)速度要快得多,因为只会刷新增量刷新分区。 仍然需要执行其他处理操作,如合并分区和重新计算,但与最初的刷新相比,通常只需要很小的一部分时间。



  • 相关阅读:
    CentOS查看CPU信息、位数、多核信息
    Linux常用命令大全
    chmod命令详细用法
    tar命令的详细解释
    yum和rpm命令详解
    LeetCode 241. Different Ways to Add Parentheses
    LeetCode 139. Word Break
    LeetCode 201. Bitwise AND of Numbers Range
    LeetCode 486. Predict the Winner
    LeetCode 17. Letter Combinations of a Phone Number
  • 原文地址:https://www.cnblogs.com/xiaopc/p/15002983.html
Copyright © 2011-2022 走看看