【问题标题】:How to save Iterable[String] to hdfs in spark-scala如何在 spark-scala 中将 Iterable[String] 保存到 hdfs
【发布时间】:2016-10-12 01:01:44
【问题描述】:
val ordersRDD = sc.textFile("/user/cloudera/sqoop_import/orders");
val ordersRDDStatus = ordersRDD.map( rec => (rec.split(",")(3), 1));
val countOrdersStatus = ordersRDDStatus.countByKey();
val output = countOrdersStatus.map(input => input._1 + "\t" + input._2);

如何将 Iterable[String] 的输出保存到 spark-scala 中的 hdfs。 可迭代[字符串]

注意:输出不是 RDD(我不能使用 output.saveAsTextFile("hdfs-path")

【问题讨论】:

    标签: scala hadoop apache-spark mapreduce rdd


    【解决方案1】:

    一种方法是编写一个简单的 HDFS 文件(与在原版 Scala 或 Java 中所做的相同)。这与 Spark 无关。

    另一种方法是将您的 output 转换为 RDD 并保存。

    val output = countOrdersStatus.map(input => input._1 + "\t" + input._2)
    sc.makeRDD(output.toList).saveAsTextFile("hdfs-path")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-16
      • 1970-01-01
      • 2020-09-03
      • 1970-01-01
      • 1970-01-01
      • 2016-10-17
      相关资源
      最近更新 更多