如何在 spark-scala 中将 Iterable[String] 保存到 hdfs
How to save Iterable[String] to hdfs in spark-scala
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")
一种方法是只编写一个简单的 HDFS 文件(与在 vanilla Scala 或 Java 中的方法相同)。这与Spark无关。
另一种方法是将您的 output
转换为 RDD 并保存。
val output = countOrdersStatus.map(input => input._1 + "\t" + input._2)
sc.makeRDD(output.toList).saveAsTextFile("hdfs-path")
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")
一种方法是只编写一个简单的 HDFS 文件(与在 vanilla Scala 或 Java 中的方法相同)。这与Spark无关。
另一种方法是将您的 output
转换为 RDD 并保存。
val output = countOrdersStatus.map(input => input._1 + "\t" + input._2)
sc.makeRDD(output.toList).saveAsTextFile("hdfs-path")