如何在Excel 2010上使用Power Query和Power Pivot的组合处理不适合RAM的巨大csv文件

时间:2018-06-08 12:18:16

标签: excel powerpivot powerquery

我想知道是否有人可以帮我解决以下问题。首先是我的设置(我无法改变,因为它是一个企业环境)

  • 操作系统:Windows 7 Professional。 Service Pack 1. 32位
  • 硬件:8.00 GB RAM(可用2.73 Gb)

我正在寻找一种解决方案,用Excel切片和切割真正大的文件(大约5Gb)。所以相当于能够使用包含如此多数据的数据透视表和图表。

我刚刚在我的笔记本电脑上安装了Power Query和Power Pivot(记住我正在运行Excel 2010 - 32位)并将巨大的.csv文件保存为与Power Query的连接。但是,我无法将其添加到我的数据模型中并从Power Pivot中使用它(显然这是Excel 2010中的一个问题)。我试图点击Power Pivot - >现有的连接。但是它会尝试导入所有内容,但内存不足或达到Excel限制。

对我来说,我的想法应该是数据永远不会被加载,它被保存为一个连接(你只存储查询的地方),而且数据是“懒洋洋地”加载的,只有你设置之后需要的东西。 Power Pivot报告(否则我不知道Power Query和Power Pivot如何帮助处理不适合Excel的大文件)。

如何将巨大文件的连接添加到数据模型,以便我可以继续工作,直到我可以设置报告(使用Power Pivot)并查看结果?

如果有一个我缺少的软件包(例如Power BI),那将帮助我解决问题,请告诉我。如果它是免费的(比如Power Query和Power Pivot)我可以安装它。

非常感谢您提前和问候

1 个答案:

答案 0 :(得分:0)

由于导入所有内容听起来像是将CSV直接加载到电源枢轴中失败了。一种选择是将CSV加载到中间数据库(如访问文件(或SQL Server Express)),同时清理数据以提高内存使用率。

注意:power pivot在更新模型时会占用更多内存。

Link to Creating an memory efficient model有一些关于如何设计电源枢轴模型以提高内存效率的技巧。

另请注意,数据的唯一性会极大地影响内存中可容纳的数据量。具有较少不同值的列消耗较少的内存,这与事实表上的row_ID一样独特,会占用大量内存。