说明
本项目利用Kafka和Spark实现一个实时处理解决方案,如下:
工作过程(以文本相似度查询匹配为例):
- WEB接口向Kafka名为“match”的topic发送参数。
- Spark Streaming 读取topic,加载文本,进行相似度实时计算(需要一个文本是否变化的标志,防止频繁加载)
- Spark将处理后的数据发送给Kafka或者存入数据库中
- 接口端查询即可。
环境准备
- 安装Hadoop,Spark
- 安装Zookeeper和Kafka
Scala
依赖
<dependencies>
<!-- spark-streaming -->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-streaming_2.12</artifactId>
<version>3.0.0</version>
</dependency>
<!-- spark-streaming-kafka -->
<dependency>
<groupId