【发布时间】:2014-04-30 17:11:16
【问题描述】:
我有一个包含 8 亿行和 3 列的数据文件。 csv 文件大小为 30 GB。
我需要对数据进行一些分析。将其加载到 SQL 服务器需要很长时间。 此外,SQL 查询大约需要 10 分钟,例如:
SELECT MAX(VALUE) AS max_s
FROM [myDB].[dbo].[myTable]
另外,我需要对每一列进行其他统计分析。
SELECT COUNT(*) as num_rows, COUNT(DISTINCT VARIABLE1) as num_var1 FROM [myDB].[dbo].[myTable]
如果我想提高分析/查询效率,SQL server 或其他工具能帮到我吗?
R 怎么样?但是,我的笔记本电脑只有 8 GB 内存。将整个数据加载到数据框中是不可能的。
关于数据的更多信息在这里 get statistics information by SQL query efficiently for table with 3 columns and 800 million rows
已经给出了一些解决方案。我真的很感激。但是,我想知道我们是否有更有效的解决方案。
【问题讨论】:
-
如果你想玩大数据,你需要大盒子(或大耐心),别无他法。
-
您是否在表中的列上创建了索引?这会让事情变得更快。
-
数据文件和csv文件是一回事吗?
-
请编辑您的问题并包含您用于 SQL 查询的表格的格式。你已经回答了你自己关于 R 的问题:基本产品的数据不适合内存。
-
@Dan Bracuk,感谢您对我之前的问题的回答。我只想找到更有效的。谢谢!
标签: sql sql-server r bigdata