littlebot
Published on 2025-04-07 / 0 Visits
0

【源码】基于Flink和HBase的商品实时推荐系统

项目简介

本项目借助实时数据处理与推荐算法,为用户提供个性化商品推荐服务。利用Flink处理来自Kafka的日志数据,将处理结果存于HBase,通过Web模块为用户提供推荐服务。

项目的主要特性和功能

  1. 实时数据处理:用Flink实时处理Kafka的日志数据,如用户行为日志、产品浏览历史;通过Flink窗口机制计算实时热度榜并缓存到Redis。
  2. 推荐算法:有基于热度的热门商品推荐、基于产品画像相似度的相关商品推荐、基于用户 - 产品浏览历史和用户 - 兴趣数据的Item协同过滤推荐。
  3. 数据存储:用HBase存储用户 - 产品浏览历史、用户 - 兴趣、用户画像、产品画像等数据;用Redis缓存实时热度榜数据。
  4. Web模块:提供前台用户界面展示推荐产品列表,提供后台监控页面展示推荐系统实时数据和指标。

安装使用步骤

前提条件

  • 已下载本项目的源码文件。
  • 已安装并配置好MySQL、Redis、HBase、Kafka服务,Docker(可选,用于部署上述服务)。

部署步骤

  1. 启动基础服务:用Docker启动MySQL、Redis、HBase和Kafka服务;配置HBase的host文件,确保可正确访问HBase服务。
  2. 构建Flink任务:在flink - 2 - hbase项目根目录执行mvn clean install,将项目打包安装到本地仓库;启动Flink任务,包括日志导入、用户历史记录、用户兴趣、产品画像等任务。
  3. 启动Web服务:在IDE中打开Web项目,等待自动引入web - flink - hbase生成的jar包;启动Web服务,确保能正常访问前台用户界面和后台监控页面。
  4. 测试推荐系统:在前台推荐页面进行点击操作,生成用户行为日志;等待系统处理日志数据,观察推荐结果变化。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】