【发布时间】:2018-01-20 07:22:29
【问题描述】:
我想做两件事:
- 将RDD splitRDD 的内容显示到控制台。
- 将结果保存到文本文件中。
下面的第 3 行 scala 代码打印出密钥,但我正在寻找值。
val emailMsg = sc.textFile(file);`
val splitRDD = emailMsg.map( line => line.split("."));
splitRDD.foreach(println);
splitRDD.coalesce(1).saveAsTextFile("newfile")
【问题讨论】:
-
能否请您添加 splitRDD 的架构。
-
不确定“下面的第 3 行 scala 代码打印出密钥”是什么意思。
split方法输出一个数组,其toString方法实际上不会打印数组本身的任何成员。如果您只想打印第二项(例如),您应该执行以下操作:splitRDD.foreach(row => row(1))。 -
你为什么要
line => line.split(".")?你能给出示例文件输入和你预期的打印输出吗? -
感谢您的帮助。我正在对电子邮件消息(文本文件)进行拆分,并尝试将发件人、收件人、日期和主题分开。所以,我正在寻找诸如“主题:”和“收件人:”之类的词。
标签: scala apache-spark