创建Kafka工程项目
需要基于IDEA创建新的Kafka工程项目,项目创建规则如下:
本次项目创建工具为IDEA,项目类型为Maven,项目名称为:kk-Kafka-Exam
本次项目的pom.xml依赖自由添加,必须要满足题二和题三所使用的依赖。
Kafka生产数据
编写Kafka API程序,向Kafka集群的kk-kafka-exam-send主题的中生产数据,该主题共有5个分区,3个副本,具体需求如下:
将如下的数据封装到集合中:
日期,下单次数,支付次数
2024-12-2 08:16:18,3,1
2024-12-2 09:22:13,5,2
2024-12-2 09:31:45,3,2
2024-12-2 09:35:10,6,3
2024-12-2 08:31:23,2,2
2024-12-2 09:46:48,3,3
生产时需要进行自定义分区,分区规则是按照整行数据进行hash,使用hash值模于分区个数。
将符合条件的数据按照分区规则发送到kk-kafka-exam 主题的中。
程序测试,确保代码完整并能正确运行。
Spark读取kafka消费数据
编写Spark读取kafka消费数据应用程序,完成Spark读取kafka数据的消费,并对数据进行输出等内容,具体规则如下:
使用Spark对kk-spark-kafka-exam主题的数据进行消费。
将消费出来的数据打印到控制台,打印内容包含topic、partition、key和value等。
消费数据时,需要设置自动提交offset,且提交间隔为5秒。
统计总的支付次数,打印到控制台。
测试程序,确保程序必须能正确执行。