项目简介
本项目借助实时数据处理与推荐算法,为用户提供个性化商品推荐服务。利用Flink处理来自Kafka的日志数据,将处理结果存于HBase,通过Web模块为用户提供推荐服务。
项目的主要特性和功能
- 实时数据处理:用Flink实时处理Kafka的日志数据,如用户行为日志、产品浏览历史;通过Flink窗口机制计算实时热度榜并缓存到Redis。
- 推荐算法:有基于热度的热门商品推荐、基于产品画像相似度的相关商品推荐、基于用户 - 产品浏览历史和用户 - 兴趣数据的Item协同过滤推荐。
- 数据存储:用HBase存储用户 - 产品浏览历史、用户 - 兴趣、用户画像、产品画像等数据;用Redis缓存实时热度榜数据。
- Web模块:提供前台用户界面展示推荐产品列表,提供后台监控页面展示推荐系统实时数据和指标。
安装使用步骤
前提条件
- 已下载本项目的源码文件。
- 已安装并配置好MySQL、Redis、HBase、Kafka服务,Docker(可选,用于部署上述服务)。
部署步骤
- 启动基础服务:用Docker启动MySQL、Redis、HBase和Kafka服务;配置HBase的host文件,确保可正确访问HBase服务。
- 构建Flink任务:在
flink - 2 - hbase
项目根目录执行mvn clean install
,将项目打包安装到本地仓库;启动Flink任务,包括日志导入、用户历史记录、用户兴趣、产品画像等任务。 - 启动Web服务:在IDE中打开Web项目,等待自动引入
web - flink - hbase
生成的jar包;启动Web服务,确保能正常访问前台用户界面和后台监控页面。 - 测试推荐系统:在前台推荐页面进行点击操作,生成用户行为日志;等待系统处理日志数据,观察推荐结果变化。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】