【发布时间】:2015-11-03 04:35:14
【问题描述】:
我是 Spark Streaming 的新手。有一个使用 Spark Streaming 的项目,输入是一个键值对字符串,例如“productid,price”。
要求是将每一行作为一个单独的事务处理,并且每1秒触发一次RDD。
在每个间隔中,我必须计算每个单独产品的总价格,例如
select productid, sum(price) from T group by productid
我目前的想法是我必须执行以下步骤 1) 用 \n val lineMap = lines.map{x=>x.split("\n")}
分割整行2) 用 "," val 分割每一行 recordMap=lineMap.map{x=>x.map{y=>y.split(",")}}
现在我很困惑如何将第一列作为键,第二列作为值,并使用 reduceByKey 函数来获取总和。
请指教。
谢谢
【问题讨论】:
标签: scala apache-spark spark-streaming