一个去重的问题
老师你写的代码我看懂了,但是我有个疑问
第一步的时候,如果同一个人在同一个直播间不同时间播了会产生重复数据
val videoInfoFieldRDD = videoInfoRDD.map(line => { val videoInfo = JSON.parseObject(line) val uid = videoInfo.getString("uid") val vid = videoInfo.getString("vid") val area = videoInfo.getString("area") (vid, (uid, area)) })
虽然在第五步会去重
val reduceRDD = joinMapRDD.reduceByKey(_ + _);
但是是否在第一步的时候直接加个distinct(),减少join时的数据量会更好?
3
收起
正在回答
1回答
这样不行,在第三步还需要用到vid进行join,第一步提前基于uid做了去重后面就没法用vid进行关联了。
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星