spark streaming 和kafka 数据丢失怎么处理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spark streaming 和kafka 数据丢失怎么处理相关的知识,希望对你有一定的参考价值。

首先要保证操作是幂等的,也就是多次写入只会产生一种结果
然后用direct的方式去读kafka,数据处理完再保存偏移量
如果不是幂等的操作会导致重复操作,落到的数据库里可能有两条相同的记录
最好的方法就是自己维护偏移量,一般使用redis来保存,效果很好,zookeeper也可以
参考技术A 前面应该还有个数据生产者,比如flume.
flume负责生产数据,发送至kafka。
spark
streaming作为消费者,实时的从kafka中获取数据进行计算。
计算结果保存至redis,供实时推荐使用。
flume+kafka+spark+redis是实时数据收集与计算的一套经典架构...

以上是关于spark streaming 和kafka 数据丢失怎么处理的主要内容,如果未能解决你的问题,请参考以下文章

Spark Streaming和Kafka集成深入浅出

Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二十二)Spark Streaming接收流数据及使用窗口函数

如何将数据从 Kafka 传递到 Spark Streaming?

Kafka 遇上 Spark Streaming

Spark Streaming通过JDBC操作数据库

spark streaming 和kafka 数据丢失怎么处理