【问题标题】:Which functions should I use to work with an XDF file on HDFS?我应该使用哪些函数来处理 HDFS 上的 XDF 文件?
【发布时间】:2015-06-10 09:47:40
【问题描述】:

我在 HDFS 集群上有一个 .xdf 文件,它大约 10 GB,有近 70 列。我想将它读入一个 R 对象,以便我可以执行一些转换和操作。我试着用谷歌搜索它并提出了两个功能:

rxReadXdf

rxXdfToDataFrame

谁能告诉我首选的功能,因为我想读取数据并在集群的每个节点上并行执行转换?

另外,如果我分块读取和执行转换,是否必须合并每个块的输出?

提前感谢您的帮助。

干杯, 阿米特

【问题讨论】:

  • 另外,如果我以块的形式读取数据,随着数据大小不断变化,我将如何动态决定块的数量

标签: r hadoop revolution-r


【解决方案1】:

请注意,rxReadXdfrxXdfToDataFrame 有不同的参数,做的事情也略有不同:

  • rxReadXdf 有一个 numRows 参数,所以如果你想读取数据集的前 1000 行(比如说),请使用它
  • rxXdfToDataFrame 支持rxTransforms,所以如果您想在读取数据的同时操作数据,请使用它
  • rxXdfToDataFrame 也有 maxRowsByCols 参数,这是限制输入大小的另一种方式

因此,在您的情况下,您想使用rxXdfToDataFrame,因为除了读取数据之外,您还要转换数据。如果您只想读取数据(无转换),rxReadXdf 在本地计算上下文中会更快一些。 HDFS 可能也是如此,但我没有检查过。

但是,您确定要将数据读入数据框中吗?您可以使用rxDataStep 在 xdf 文件上运行(几乎)任意 R 代码,同时仍以该格式保留您的数据。有关如何使用转换参数,请参阅链接的文档页面。

【讨论】:

    猜你喜欢
    • 2019-03-21
    • 2012-04-16
    • 2018-10-18
    • 2011-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-29
    相关资源
    最近更新 更多