使用Power Query时的最佳做

2022-09-09 15:58:41 浏览数 (2)

选择正确的连接器

Power Query提供了大量数据连接器。 这些连接器从 TXT、CSV 和Excel文件等数据源到Microsoft SQL Server等数据库,以及 Microsoft Dynamics 365 和 Salesforce 等常用 SaaS 服务。 如果未在 “获取数据 ”窗口中看到数据源,则始终可以使用 ODBC 或 OLEDB 连接器连接到数据源。

为任务使用最佳连接器可提供最佳体验和性能。 例如,在连接到SQL Server数据库时,使用 SQL Server 连接器而不是 ODBC 连接器不仅为你提供了更好的获取数据体验,而且SQL Server连接器还提供可改善体验和性能的功能,例如查询折叠。 若要详细了解查询折叠,请参阅Power Query查询折叠。

每个数据连接器遵循标准体验,如 “获取数据”中所述。 此标准化体验具有一个名为 “数据预览”的阶段。 在此阶段中,你将提供一个用户友好的窗口,以选择要从数据源获取的数据(如果连接器允许该数据)以及该数据的简单数据预览。 甚至可以通过 导航器 窗口从数据源中选择多个数据集,如下图所示。

备注

若要查看Power Query中可用连接器的完整列表,请参阅Power Query中的连接器。

提前筛选

建议始终在查询的早期阶段或尽早筛选数据。 某些连接器将通过查询折叠利用筛选器,如Power Query查询折叠中所述。 这也是筛选出与案例无关的任何数据的最佳做法。 这样,你便能更好地关注手头的任务,只需显示数据预览部分相关的数据。

可以使用自动筛选菜单来显示列中找到的值的不同列表,以选择要保留或筛选掉的值。还可以使用搜索栏来帮助查找列中的值。

还可以利用特定于类型的筛选器,例如日期、日期时间甚至日期时区列 的上 一个筛选器。

这些特定于类型的筛选器可帮助你创建动态筛选器,该筛选器将始终检索前 x 秒、分钟、小时、天、周、月、季度或年份中的数据,如下图所示。

备注

若要详细了解如何基于列中的值筛选数据,请参阅 按值筛选。

上次执行昂贵的操作

某些操作需要读取完整的数据源才能返回任何结果,因此在Power Query 编辑器中预览速度较慢。 例如,如果执行排序,则前几行可能位于源数据末尾。 因此,若要返回任何结果,排序操作必须首先读取 所有 行。

其他操作 ((例如筛选器) )无需读取所有数据,然后再返回任何结果。 相反,它们以所谓的“流式处理”方式对数据进行操作。 数据“流”依据和结果一路上返回。 在Power Query 编辑器中,此类操作只需要读取足够的源数据才能填充预览。

如果可能,请先执行此类流式处理操作,最后执行任何成本更高的操作。 这有助于最大程度地减少每次向查询添加新步骤时等待预览呈现的时间。

临时处理数据子集

如果在Power Query 编辑器中向查询添加新步骤很慢,请考虑先执行“保留第一行”操作并限制要处理的行数。 然后,添加所需的所有步骤后,删除“保留第一行”步骤。

使用正确的数据类型

Power Query中的一些功能与所选列的数据类型相关。 例如,选择日期列时,“添加列”菜单中的“日期和时间”列组下的可用选项将可用。 但如果列没有数据类型集,则这些选项将灰显。

类型特定的筛选器也会出现类似的情况,因为它们特定于某些数据类型。 如果列未定义正确的数据类型,则这些特定于类型的筛选器将不可用。

0 人点赞