我想计算每位用户日志计数的摘要统计信息,我使用的RDD来自:
val fileRdd = sc.textFile("s3n://<bucket>/project/20141215/log_type1/log_type1.*.gz")
val jsonRdd = sqlContext.jsonRDD(fileRdd)
rdd.registerTempTable("log_type1")
val result = sqlContext.sql("SELECT user_id, COUNT(*) AS the_count FROM log_type1 GROUP BY user_id ORDER BY the_count DESC")
如何在result
上应用Spark MLlib提供的统计功能?由于每个用户的日志计数很重要,我希望得到以下表单的摘要: / p>
Mean: 3.245 (user-id-abcdef)
Min: 1 (user-id-mmmnnnkkk)
Median: 15 (user-id-xyzrpg)
Max: 950 (user-id-123456789)
我怎么能这样呢?看起来Spark的API中没有类似MapRDD
的内容。