前言
提示:此文章作为实际开发过程中的文档记录,下面案例仅供参考
随着业务的不断扩展,需要一些个性化的功能来增加亮点,本章介绍了个性化功能之一的推荐功能。
使用基于物品的协同过滤算法来实现推荐功能。
此文章就不介绍推荐算法内部逻辑了,重在实现
一、数据库设计
直接先上数据库
字段 | 名称 |
---|---|
ID | ID |
USER_ID | 用户ID |
ITEM_ID | 物品ID |
PREFERENCE | 偏好值 |
这是最基本的格式,只需要USER_ID,ITEM_ID,PREFERENCE这三个字段就可以实现行为数据存储。
这里的ITEM_ID为实际需要推荐对象的唯一键
当然,也可以根据实际业务,加上需要的字段,比如时间。
下面是数据准备,可以作为测试数据
USER_ID | ITEM_ID | PREFERENCE | CRT_TIME | ID | |
---|---|---|---|---|---|
1 | 443185468969865216 | 2.5 | 2024-06-21 12:37:59 | 576139542714068993 | |
1 | 444976198524620800 | 3 | 2024-06-21 12:38:12 | 576139597470707713 | |
1 | 510202168684335104 | 5 | 2024-06-21 13:03:00 | 576136183911231489 | |
1 | 573258351636647936 | 0.1 | 2024-08-12 13:52:11 | 595002384531664896 | |
266024222614683648 | 317079152804872192 | 0.3 | 2024-08-09 11:25:49 | 593876702485491713 | |
266024222614683648 | 418845332949979136 | 0.3 | 2024-08-09 11:53:06 | 593882772440297473 | |
266024222614683648 | 432979672986308608 | 2 | 2024-06-21 12:40:04 | 576140067018846209 | |
266024222614683648 | 443185468969865216 | 5 | 2024-06-21 12:43:59 | 1 | |
266024222614683648 | 444976198524620800 | 2.5 | 2024-06-21 12:39:18 | 576139876173819905 | |
266024222614683648 | 510202168684335104 | 2 | 2024-06-21 12:39:07 | 576139829084368897 | |
324354387522158592 | 410554581992296448 | 5 | 2024-06-21 12:49:14 | 576142086932738049 | |
324354387522158592 | 432979672986308608 | 4 | 2024-06-21 12:47:14 | 2 | |
324354387522158592 | 510202168684335104 | 2.5 | 2024-06-21 12:46:40 | 576141728726593537 | |
324354387522158592 | 534795602552180736 | 4.5 | 2024-06-21 12:47:32 | 3 | |
405145387760418819 | 411287434115960832 | 4 | 2024-06-21 12:57:21 | 11 | |
405145387760418819 | 432979672986308608 | 4 | 2024-06-21 12:55:59 | 9 | |
405145387760418819 | 443185468969865216 | 2 | 2024-06-21 12:55:37 | 8 | |
405145387760418819 | 444976198524620800 | 3 | 2024-06-21 12:55:07 | 7 | |
405145387760418819 | 510202168684335104 | 4 | 2024-06-21 12:54:33 | 6 | |
405145387760418819 | 534795602552180736 | 3.5 | 2024-06-21 12:56:30 | 10 | |
405145389433946114 | 411287434115960832 | 4 | 2024-06-21 12:51:21 | 576142908664000513 | |
405145389433946114 | 432979672986308608 | 3 | 2024-06-21 12:50:53 | 5 | |
405145389433946114 | 44318546896986521 |