数据流注意事项和限制

以下各节介绍了针对创作、刷新和容量管理的一些数据流限制,用户应牢记这些限制。

一般限制

  • 数据流可能并不适用于所有美国政府 DoD 客户。 有关政府环境中的功能奇偶一致性,请参阅面向政府的 Power BI 功能可用性文章。
  • 删除的数据源不会从数据流数据源页中删除,这是一种良性行为,不会影响数据流的刷新或编辑。 在世系视图中,已删除的数据源显示为数据流的世系。
  • 已删除的数据源仍会显示在“网关”下拉列表的“设置”页中。
  • “深度”相当于与其他数据流关联的数据流。 当前最大深度为 32。
  • “广度”相当于数据流中的实体。
    • 对于数据流中实体的最优数量没有任何准则或限制,但是,共享数据流的刷新限制为每个实体 2 小时,每个数据流 3 小时。 因此,如果你有两个实体,而每个实体需要 2 小时,则不应将它们放在同一数据流中。
    • 对于 Power BI Premium,准则和限制基于单个用例而不是具体要求。 对于 Power BI Premium,唯一限制是每个数据流 24 小时刷新一次。
  • 要刷新工作区中 10 个以上的数据流,需要具有 Power BI Premium 订阅。
  • 有关 PowerQuery 限制,请参阅 PowerQuery Online 限制一文。
  • Power BI 数据流不支持在 URL 参数中使用全局变量。
  • 目前不支持多地理位置,除非将存储配置为使用你自己的 Azure Data Lake Gen2 存储帐户。
  • VNet 支持是通过使用网关实现的。
  • 将计算实体与网关数据源一起使用时,应在与计算不同的数据源中执行数据引入。 计算实体应基于仅用于引入的实体构建,而不是在其自己的糅合步骤中引入数据。
  • 在 Power BI 数据流中,你可以使用参数,但不能对其进行编辑,除非编辑整个数据流。 在这方面,数据流中参数的行为类似于已声明的常数。
  • 故障排除刷新方案中的某些连接器不可用于 Premium 工作区中的数据流和数据市场。
  • 在使用数据流执行 DirectQuery 时,使用切片器视觉对象的搜索是区分大小写的。

数据流创作

创作数据流时,应注意以下事项:

  • 数据流中的创作是在 Power Query Online (PQO) 环境中完成的;请参阅 Power Query 限制中所述的限制。 由于数据流创作是在 Power Query Online (PQO) 环境中完成的,因此对数据流工作负载配置执行的更新只会影响刷新,而不会影响创作体验。

  • 数据流只能由其所有者修改。

  • 在“我的工作区”中,数据流不可用。

  • 使用网关数据源的数据流不支持同一数据源的多个凭据。

  • 使用 Web.Page 连接器需要网关。

API 注意事项

有关受支持的数据流 REST API 的详细信息,请参阅 REST API 参考。 下面是要注意的一些事项:

  • 导出和导入数据流会为该数据流提供新的 ID。

  • 导入包含链接表的数据流不会更新该数据流中的现有引用(应在导入数据流之前手动更新这些查询)。

  • 部署数据流时,可以利用冲突处理程序 GenerateUniqueNameAbort 参数在操作已存在时中止操作,或指示 API 改为自动创建唯一名称。 如果数据流最初是使用导入 API 创建的,则可以使用 CreateOrOverwrite 参数覆盖这些数据流。

共享容量中的数据流

共享容量中的数据流存在以下限制(非高级容量):

  • 刷新数据流时,共享容量中的超时时间为每个表 2 小时,每个数据流 3 小时。
  • 尽管只要对查询禁用了“启用加载”属性,链接表就可以存在于共享数据流中,但不能在共享数据流中创建链接表。
  • 不能在共享数据流中创建计算表。
  • AutoML 和认知服务在共享数据流中不可用。
  • 增量刷新在共享数据流中不起作用。

Premium 中的数据流

Premium 中存在的数据流具有以下注意事项和限制。

刷新和数据注意事项:

  • 刷新数据流时,超时时间为 24 小时(不区分表和/或数据流)。

  • 将数据流从增量刷新策略更改为普通刷新会删除所有数据,反之亦然。

  • 修改数据流架构会删除所有数据。

  • 将 Premium Per User (PPU) 许可证与数据流一起使用时,将数据移出 PPU 环境时会清除数据。

  • 在 Premium Per User (PPU) 上下文中刷新数据流时,数据对非 PPU 用户不可见。

  • 增量刷新只有在启用增强的计算引擎时才可用于数据流。

链接表和计算表:

  • 链接表可以延续至 32 个引用的深度。

  • 不允许链接表的循环依赖项。

  • 链接表无法与从本地数据源获取数据的常规表联接。

  • 当某一查询(例如查询 A)用于数据流中另一个查询(查询 B)的计算时,查询 B 将成为计算表。 计算表不能引用本地源。

计算引擎:

  • 使用计算引擎时,数据引入的初始增长时间大约为 10% 到 20%。

    • 这仅适用于计算引擎上第一个从数据源读取数据的数据流。
    • 使用源数据流的后续数据流不会产生相同的损失。
  • 只有特定操作可以使用计算引擎,并且只能通过链接表或作为计算表使用。 此博客文章中提供了完整的操作列表。

容量管理:

  • 按照设计,Premium Power BI 容量具有一个内部资源管理器,当容量的运行内存不足时,该管理器会以各种方式限制工作负荷。

    1. 对于数据流,这种限制压力减少了可用 M 容器的数量。
    2. 可以将数据流的内存设置为 100%,并根据数据大小使用适当大小的容器,而工作负荷将相应地管理容器数量。
  • 通过将分配给工作负荷的内存总量除以分配给容器的内存量,可以确定大致的容器数量。

语义模型中的数据流使用情况

  • 在 Power BI Desktop 中创建语义模型,然后将其发布到 Power BI 服务时,请确保 Power BI Desktop 中用于数据流数据源的凭据与将语义模型发布到服务时使用的凭据相同。
    1. 如果不能确保这些凭据相同,则在语义模型刷新时,会出现“找不到密钥”错误

注意

如果数据流结构发生更改(例如新建或重命名列),语义模型将不会显示更改,并且此更改还可能会导致 Power BI 服务中的语义模型数据刷新失败,直到在 Power BI Desktop 中刷新并重新发布。

数据流和命名连接

将数据流与命名连接一起使用时,以下限制适用:

  • 只能创建一个特定路径和类型的云连接,例如只能创建一个 SQL 加服务器/数据库云连接。 可以创建多个网关连接。
  • 不能对云数据源进行命名或重命名;可以对网关连接进行命名或重命名。

ADLS 限制

  • ADLS 在 GCC、GCC High 或 DOD 环境中不可用。 有关详细信息,请参阅适用于美国政府客户的 Power BI
  • 由于 ADLS Gen 2 API 中的更改,你必须是资源的所有者。
  • 不支持 Azure 订阅迁移,但有两个替代方案可以做到这一点:
    • 第一种方法:迁移后,用户可以拆离工作区并重新附加。 如果使用的是租户级别的帐户,则必须拆离所有工作区,然后在租户级别拆离,再重新附加。 对于不希望删除其所有数据流或拥有许多工作区的客户而言,这不是理想的方法。
    • 第二种方法:如果前一种方法不可行,请提交支持请求,以更改数据库中的订阅 ID。
  • 由于存在以下限制,ADLS 不支持“工作区命名和数据流命名”一文的目录和文件名部分列出的大多数元素:
    • Power BI 要么返回一个无用的错误,要么允许此过程发生,但刷新将失败。
  • 不支持跨租户 ADLS 订阅。 附加到 Power BI 的 ADLS 必须属于 Power BI 用于 Microsoft Entra ID 的同一 Azure 租户。

数据流数据类型

数据流中支持的数据类型如下:

糅合数据类型 数据流数据类型
时间 时间
Date Date
DateTime DateTime
时区 DateTimeOffset
逻辑 布尔
文本 String
任意 字符串
货币 小数
Int8 Int64
Int16 Int64
Int32 Int64
Int64 Int64
Double Double
百分比 Double
Single Double
小数 Double
Number Double
持续时间 不支持
二进制 不支持
函数 不支持
不支持
列出 不支持
记录 不支持
类型 不支持
操作 不支持
不支持
Null 不支持

以下文章提供有关数据流和 Power BI 的详细信息: