快速业务开发时的救星就是这个 FastSparkStreaming-2.0.jar
。支持Kafka和Spark Streaming结合,两种比较实用的plan 设计模式:缓存模式和窗口模式,对不同场景都挺友好。
缓存模式的逻辑比较直白:结果直接丢进Kafka,不玩窗口那一套,适合对实时性要求高但不追求批间状态的场景。比如日志收集系统,落一波 Kafka 就完事儿。
窗口模式就偏复杂点了,适合需要对数据做窗口聚合或的需求,比如 10 分钟交易统计啥的。这种模式不持久化中间批次结果,轻量一些,资源占用也小,蛮适合日常数据类任务。
要注意的是两种模式不能混着用,选哪个看你业务需求。文档和代码都在作者的社区仓库,想深入研究的可以去逛逛:https://github.com/caiyunfan123
如果你还不太熟 Kafka 和 Spark 配合怎么玩,可以先看看这个Kafka 集群模式生产者消费者实例,配合起来更顺手。
,FastSparkStreaming-2.0.jar
比较适合做实时数据、日志管道、监控系统这类活儿,写起来简单,响应也快。
如果你刚好在做 Kafka 相关项目,可以试试看这个包,省不少事。