仙道彰 男 1990 计算机
樱木花道 男 1989 软件
流川枫 男 1990 网络
三井寿 男 1991 计算机
彩子 女 1992 网络
晴子 女 1993 计算机
为什么标记的地方一直报错···哪错了?
樱木花道 男 1989 软件
流川枫 男 1990 网络
三井寿 男 1991 计算机
彩子 女 1992 网络
晴子 女 1993 计算机
仙草 男 1995 计算机
假设一个数据文件包含上述信息,通过排序sortByKey按年龄从大到小排序:
package main
import org.apache.log4j.{Level, Logger}
import org.apache.spark.{SparkContext, SparkConf}
import org.apache.spark.SparkContext._
import scala.collection.mutable.ListBuffer
/**
* Created by liufeng on 2015/3/31.
*/
object paixu2 {
def main(args: Array[String]): Unit ={
//屏蔽日志
Logger.getLogger("org.apache.spark").setLevel(Level.WARN)
Logger.getLogger("org.eclipse.jetty.server").setLevel(Level.OFF)
//3
if (args.length != 3){
println("Usage: java -jar code.jar dependency_jars file_location save_location")
System.exit(0)
}
val jars = ListBuffer[String]()
args(0).split(',').map(jars += _)
val conf = new SparkConf().setAppName("paixu2").setMaster("local[2]").setSparkHome("/usr/local/spark-1.2.0-bin-hadoop2.4").setJars(jars)
val sc = new SparkContext(conf)
//
val data = sc.textFile("hdfs://localhost:9000/datatnt/text2.txt")
data.cache()
val pdata = data.map(_.split("\t")).filter(_.length == 4)//压缩,判断每行是否4条数据
//下面这条语句一直报错
val odata = pdata.map(x => (x._3, x._1)).sortByKey(false).map(x => (x._3, x._1)).saveAsTextFile("hdfs://localhost:9000/outputtnt/")//true升序false降序
//x => (x._3, x._1) 每行数据的第一个key值和第三个key值交换位置,因为sortByKey对第一个进行排序,排序后再交换回去
}
}
为什么标记的地方一直报错···哪错了?