计算出所有人的平均年龄:
val lines = sc.textFile("/root/data/scala/people/page.txt")
val count = lines.count()
val total = lines.map(line => line.split(" ")(1)).map(t=>t.trim.toInt).collect().reduce((a,b)=>a+b)
val avgAge = total.toDouble / count.toDouble
print("平均年龄:"+avgAge)
错误记录:
/root/data/scala/people/page.txt,这个里面的文件格式形成不太正确。
于是,我的所有活动不再以成败而论,而以自己不断地进行生活的实践活动而论,通过不断地实践活动来纠正自己的认识,衡量自己不断地进行做事的准则,实践才是衡量真理的唯一法则。
//hdfs路径 /export/servers/hadoop-2.7.4/bin
//hdfs中创建文件夹 ./hdfs dfs -mkdir -p /user/hadoopimport scala.util.Random
val outputFile = "hdfs://hadoop01:9000/usr/hadoop/page.txt"
val rand = new Random()
val arr = new Array[String](1000)
for(i<-1 to 1000){
arr(i-1)=1+""+rand.nextInt(100)
}
val rdd = sc.parallelize(arr)
rdd.saveAsTextFile(outputFile)//显示数据 ./hdfs dfs -cat /user/hadoop/page.txt/*
val lines = sc.textFile("hdfs://hadoop01:9000/user/hadoop/page.txt")
val count = lines.count()
val total = lines.map(line => line.split(" ")(1)).map(t=>t.trim.toInt).collect().reduce((a,b)=>a+b)
val avgAge = total.toDouble / count.toDouble
print("平均年龄:"+avgAge)