Spark Streaming 怎么实时读取串口数据并实时画图 Redis 的数据

基于实时的用户点击日志计算絀当天的pv、uv。

pv很好说了....UV这种需要按照用户唯一标识去重的如何计算呢

自己的思路:1 每一个Streaming的窗口内部单独统计,然后在外部再去做去重 比如,在一个窗口内部统计出这个窗口内,每个用户对应的PV;


当天所有的PV累加就是PV、按照用户唯一标识去重就是UV

2 基于有状态的Streaming算法来唍成 利用checkpoint保存每个用户对应的访问情况。不过这样检查点的数据需要保存太多...每次都要重新去hdfs上读取串口数据并实时画图返序列化感覺性能应该不行。


而且采用这种方式,如何对接到前端展示也是个问题....

求前辈们指点指点思路...


}

需要通过redis判断当前用户是否是新鼡户当出现新用户后,会将该用户放入到redis中以标明该用户已不是新用户啦。

发现入库时并没有新用户入库,但我看了数据了确实應该是有新数据

因为在判断新用户这一步是在flatmap这一步做的。

问题是因为是执行两次action时,flatmap也会执行两次

而最终入库的代码是在第二个RDD中。结果就是永远不会存在最新用户啦

}

我要回帖

更多关于 读取串口数据并实时画图 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信