20、云存储与推荐系统的数据管理与应用

云存储与推荐系统的数据管理与应用

1. 数据存储表设计

在处理大规模结构化数据推荐时,涉及到几个关键的表设计,以满足不同的查询需求。主要有三个表:
- 用户关注表(Users) :用于记录用户之间的关注关系,可查询“用户 X 关注了谁”以及“谁关注了用户 X”。
- 推荐结果表(Recommendations) :存储机器学习作业的输出,用于在用户关注新用户时提供推荐。

2. 用户关注表的设计方案
2.1 高表设计

高表通过在行键中添加信息来表示数据,有很多行。例如,用户 - 1 关注用户 - 2 的行键为 crc32c(user - 1) + crc32c(user - 2)。以下是示例表:
| Row key | Follows (column family) | Username |
| ---- | ---- | ---- |
| 14ccc4ac79c3758 | | user - 2 |
| 79c3758f5f7b45b | | user - 3 |
| f5f7b45b14ccc4ac | | user - 1 |
| f5f7b45b79c3758 | | user - 2 |

这种设计便于查询“用户 - 1 是否关注用户 - 2”,只需计算哈希并检索行。也可通过前缀扫描获取用户关注的所有人,但难以查询某个用户的所有关注者。为解决此问题,可存储双向关系的两行,使用特殊令牌区分“关注”和“被关注”,如下表:
| Row key | Follows (co

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值