Power BI 处理 16GB 的 CSV 文件

4
我有一个16GB的CSV文件,已经导入到Power BI桌面应用程序中。我使用的工作站是运行Windows Server 2016(64GB内存)的Azure VM。文件的导入只需要几秒钟,但是当我尝试在查询编辑器中将数据集过滤到特定的日期范围时,这需要相当长的时间(目前仍在运行,已经大约30分钟了)。源文件(16GB CSV)正在从VM上创建的RAM磁盘中读取。
当处理这样大小的数据集时,最佳方法/实践是什么?如果我将CSV文件导入SQL服务器,然后在将数据集过滤到日期范围时使用直接查询,是否会获得更好的性能?我原本认为,在我的当前设置下,由于VM上有64GB内存,它应该运行得相当快。

这就是为什么你需要预聚合数据。 - Daniel W.
注意:通常认为“大数据”需要多台服务器来处理。 - OneCricketeer
1个回答

3
当数据量很大时,你需要适当的计算能力来处理它。当你在Power BI中导入这些行时,Power BI本身需要这个计算能力。如果你在SQL Server(或Analysis Services或其他)中导入数据,并使用Direct Query或Live Connection,你可以将计算委托给数据库引擎。在Live Connection中,所有建模都在数据库引擎中完成,而在Direct Query中,建模也在Power BI中完成,你可以添加计算列和度量值。因此,如果你使用Direct Query,仍然必须小心哪里计算了什么。
你要求“最好”的解决方案,这总是有点模糊。你必须根据许多其他因素自己决定。Power BI本身就是Analysis Services(当你运行Power BI Desktop时,你可以看到Microsoft SQL Server Analysis Services子进程正在运行),因此在Power BI中导入数据应该给你类似于在SSAS中导入数据的性能。在这种情况下提高性能,你需要调整你的模型。如果你在SQL Server中导入数据,你需要调整数据库(适当的索引和建模)。
因此,为了做出最终决定,你必须测试这些解决方案,考虑价格和硬件要求,并根据这些来决定什么对你的情况最好。
最近,微软演示了1万亿行数据的演示。你可能想看看它。我还建议你看看聚合,这可以帮助你提高模型的性能。

1
MS演示的链接已经无法访问了。 - zkilnbqi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接