【问题标题】:Power Query 'an evaluation is in progress' when merging合并时Power Query“正在进行评估”
【发布时间】:2015-08-06 11:10:19
【问题描述】:

在 PowerQuery 中合并两个表时,会运行评估以确定可能的匹配数。我运行非常大的表(将 10K 记录表与 500K 记录表合并)所以这可能需要很长时间。

我知道会有比赛,因为我以前做过,而且我不是初学者。然而 PowerQuery 坚持运行这种行为。

有没有办法通过这一步?几乎感觉就像您只需要在 Excel 中关闭自动计算,以便您可以继续实际做某事。

有什么想法吗?

【问题讨论】:

  • 更糟糕的是,它会将所有行加载到编辑器中。当我还没有完成构建查询时,这似乎是一种资源浪费......
  • 等待“意外错误:内存不足”的时间太长了
  • 让我们先尝试应用过滤器... opps "达到 1000 个值的限制"
  • 是时候学习 MDX 公式和高级查询编辑器了。

标签: powerquery msbi


【解决方案1】:

我会添加一个上游过滤器来限制行,例如保留行/保留前行/100。您可能需要对两个查询都执行此操作。理想情况下,您保留足够的行或使用特定的过滤器来获得一些匹配,以帮助您的下游查询设计工作。

然后,一旦查询设计完成,我会删除过滤器并让它撕裂。

这是 PQ 应该在查询编辑器中做的事情,但它似乎确实在 Merge 上变得异常。

【讨论】:

  • 耸人听闻。谢谢您的帮助。我会试一试,然后回来。那只是放置一个 SQL 'LIMIT' 吗??
  • 视情况而定。他们称之为“查询折叠”,(PQ 逻辑被“折叠”到 SQL SELECT 中。它不会发生在任何无法转换为 SQL 的步骤的下游。所以尽早插入 Keep Rows。
  • 任何想法如何在 PowerBI 中打开查询折叠?此链接建议mssqltips.com/sqlservertip/3635/… 使用 SQL Server 分析,但由于我不是 Azure 上 SQL 服务的系统管理员,我认为我无法获得它。我只是一名分析师,而不是 IT。
  • 也许我可以通过将过滤器应用于另一个文件(即以“A”开头的用户)来限制数据,然后稍后将其删除。还是在查询中发生得太晚了?
  • "以 'A' 开头的用户" 可能会起作用。您不能“打开”查询折叠——由 PQ 引擎决定。您只能使用 SQL Profiler 对其进行监控。尽可能将您的过滤器添加到 Step 列表中以鼓励折叠。
猜你喜欢
  • 2020-05-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多