【发布时间】:2017-08-08 05:57:38
【问题描述】:
我在工作时被分配了一个 8GB RAM 的桌面,但我无法修改。我的工作涉及对一组约 1GB、约 8M 行表进行数据操作。
如果我可以合并所有文件,我需要做的某些分析会更容易实现,但这意味着我目前使用的工具 R 根本无法加载合并的文件。
我四处询问,并被告知使用 Apache Spark 或设置本地 SQL 服务器可以解决问题,让我忽略数据处理步骤的内存限制(预期的输出总是只包含少数总数) .我只是想在安装任何东西之前确保它们确实能像那样工作。
(作为一个额外的问题,我想知道像 SPSS 这样的软件如何能够顺利地加载和处理庞大的数据集,以及为什么 R 不能实现类似的方法)
【问题讨论】:
-
工作是为了什么?我们不知道您要做什么。
-
我在考虑对数据进行任何任意操作都会返回一个小输出。举个具体的例子,计算每个唯一项目 ID 出现的次数。
-
你的数据目前是什么格式的?
-
然后将其加载到数据库中最有意义。或者可能是像 mongodb 这样的 nosql 解决方案。但是能够查询您的数据对于进行分析至关重要。遍历 csv 文件并不是成功的秘诀。
-
.csv 数据可以方便地加载到 SQL 数据库中,但 Spark 本身也支持它。您必须使用
$SPARK_HOME/bin/spark-shell --packages com.databricks:spark-csv_2.11:1.5.0之类的东西指定 csv 插件。但是您可以直接在 Spark 中读取/写入 .csv,无需任何复杂的导入/导出步骤。
标签: sql-server apache-spark large-data