# 后端简介
## 一、recommend
独立运行的推荐源代码,分为实时推荐以及离线推荐,综合利用了协同过滤算法以及基于内容的推荐方法来提供混合推荐
### 技术栈简介
1. Spark
2. Spark SQL
3. SparkMLlib
4. ~~Flink(尚未启用,2.0 版本开发即将启动)~~
5. ~~FlinkML(2.0 版本即将迁移到 Flink 上)~~
6. MongoDB:存储文本数据
7. Redis:保存用户的评分数据,为实时处理提供高速的数据传输,数据格式为每一个 userId 里面保存多个 productId:rates,即
1. userId:123456
1. 10010:4.5
2. 10011:2.3
2. userId:654321
1. XXXX
8. 项目各个模块的原理详解,请点击[这里]( https://github.com/ittqqzz/ECommerceRecommendSystem/blob/master/backend/detail.md )
### 项目总览
离线计算均为批处理任务,使用 SparkSQL 与 SparkMLib 辅助处理
实时计算需要 SparkStreaming 辅助处理
![总览](./assets/recommendsystempng.png)
### 离线推荐部分
1. 统计服务(Spark Core + Spark SQL)
2. 推荐服务(Spark Core + Spark MLlib + ALS 算法)
### 实时推荐部分:
1. 获取消息服务(Redis + Kafka)
2. 推荐服务(Spark Streaming)
### 数据集格式
商品数据集
| **字段名** | **字段类型** | **字段描述** | **字段备注** |
| -------------- | ------------ | ------------- | ---------------- |
| **productId** | Int | 商品的ID | |
| **name** | String | 商品的名称 | |
| **categories** | String | 商品所属类别 | 每一项用“\|”分割 |
| **imageUrl** | String | 商品图片的URL | |
| **tags** | String | 商品的UGC标签 | 每一项用“\|”分割 |
用户评分数据集
| **字段名** | **字段类型** | **字段描述** |
| ------------- | ------------ | ------------ |
| **userId** | Int | 用户的ID |
| **productId** | Int | 商品的ID |
| **score** | Double | 商品的分值 |
| **timestamp** | Long | 评分的时间 |
### 算法简介
ALS:通过观察到的所有用户给产品的打分,来推断每个用户的喜好并向用户推荐适合的产品
TF-IDF:提取最能代表文本的关键词
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
毕设项目:基于spark的商品大数据实时推荐系统 (129个子文件)
.browserslistrc 21B
chunk-vendors.37378a5e.css 228KB
app.64d10bc3.css 1KB
ratings.csv 1.18MB
products.csv 25KB
.gitignore 214B
index.html 1024B
index.html 587B
index.html 185B
favicon.ico 4KB
favicon.ico 4KB
ProductRestApi.java 9KB
RecommenderService.java 6KB
ProductService.java 3KB
RatingService.java 3KB
UserService.java 3KB
KafkaLogProducer.java 2KB
UserRestApi.java 2KB
User.java 2KB
PropertiesFileUtils.java 1KB
Product.java 1KB
Rating.java 1KB
Constant.java 1KB
ProductRatingRequest.java 876B
Configure.java 699B
RegisterUserRequest.java 588B
LoginUserRequest.java 583B
Recommendation.java 581B
ProductRecommendationRequest.java 542B
UserRecommendationRequest.java 506B
RateMoreRecommendationRequest.java 311B
ContentBasedRecommendationRequest.java 309B
HotRecommendationRequest.java 301B
ItemCFRecommendationRequest.java 297B
clip_image002.jpg 10KB
clip_image002-1574242543112.jpg 3KB
chunk-vendors.635cc6d4.js 875KB
app.a7f19c27.js 25KB
vue.config.js 434B
babel.config.js 73B
postcss.config.js 59B
package-lock.json 416KB
package.json 984B
tsconfig.json 683B
index.jsp 199B
chunk-vendors.635cc6d4.js.map 3.46MB
app.a7f19c27.js.map 71KB
README.md 2KB
README.md 924B
recommendsystempng.png 84KB
image-20191120135455103.png 59KB
image-20191120135736664.png 29KB
image-20191120174538969.png 24KB
image-20191120173352929.png 22KB
image-20191120141343663.png 21KB
image-20191120160300959.png 20KB
image-20191120141422195.png 19KB
image-20191030140455319.png 19KB
image-20191120141235347.png 18KB
image-20191120153837388.png 18KB
clip_image002-1574238891217.png 17KB
clip_image002.png 17KB
image-20191030141303449.png 17KB
image-20191120154017945.png 16KB
image-20191120170044792.png 5KB
logo.png 903B
user.png 714B
log4j.properties 712B
log4j.properties 262B
log4j.properties 262B
log4j.properties 262B
log4j.properties 262B
log4j.properties 262B
log4j.properties 262B
recommend.properties 180B
OnlineRecommender.scala 12KB
ContentRecommender.scala 6KB
OfflineRecommender.scala 5KB
ItemCFRecommender.scala 4KB
DataLoader.scala 4KB
StatisticsRecommender.scala 3KB
ALSTrainer.scala 3KB
Header.stylus 1KB
Home.stylus 463B
Detail.stylus 412B
Search.stylus 357B
Login.stylus 268B
HelloWorld.stylus 149B
Home.ts 3KB
Login.ts 3KB
Detail.ts 3KB
Search.ts 2KB
Header.ts 2KB
main.ts 1KB
index.ts 705B
shims-tsx.d.ts 304B
index.ts 242B
index.ts 168B
HelloWorld.ts 158B
shims-vue.d.ts 72B
共 129 条
- 1
- 2
资源评论
- FrostMillennium2023-12-16非常有用的资源,可以直接使用,对我很有用,果断支持!
c++服务器开发
- 粉丝: 3042
- 资源: 4463
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功