【问题标题】:How can I make a Spark paired RDD from many S3 files whose URLs are in an RDD?如何从许多 URL 位于 RDD 中的 S3 文件中制作 Spark 配对 RDD?
【发布时间】:2014-09-22 17:39:46
【问题描述】:

我有数百万个 S3 文件,其大小平均约为 250k,但变化很大(最多 4 GB 大小)。我不能轻松地使用通配符来挑选多个文件,但我可以制作一个 RDD,其中包含我要随时处理的文件的 S3 URL。

我想要两种配对的 RDD。第一个是 S3 URL,然后是 Unicode 字符串形式的文件内容。 (当某些文件可能很长时,这是否可能?)第二个可以从第一个计算,通过 split()-ting 换行符处的长字符串。

我已经尝试了多种方法来做到这一点,通常会得到 Python PicklingError,除非我一次遍历 S3 URL 的 PII。然后我可以使用 union() 来构建我想要的大 pairRDD,如另一个问题中所述。但我认为这不会并行运行,这在处理大量文件时很重要。

我目前正在使用 Python,但如果需要,可以切换到 Scala 或 Java。

提前致谢。

【问题讨论】:

    标签: amazon-s3 apache-spark


    【解决方案1】:

    只要您的集群具有内存容量,文件的大小就无关紧要。通常,您需要先进行一些tuning 操作,然后才能一切正常。

    我不熟悉python,所以我不能对酸洗错误发表太多评论。也许这些链接可能会有所帮助,但我会添加 python 标签,以便更好的人可以查看。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-29
      • 1970-01-01
      • 2020-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-17
      • 1970-01-01
      相关资源
      最近更新 更多