关于购物车表

来源:4-14 设计员工与用户表(二)

kingofzihua

2019-07-01

这里面没有讲购物车的表怎么设计,购物车表使用nosql数据库来存储吗?用nosql的话,可不可以介绍下 购物车表的模型是什么样的,具体存储哪些数据?

写回答

4回答

神思者

2019-07-01

购物车的实现方法有很多,有在移动端本地存储的,还有用HttpSession存储的,还有用Redis存储的,最后是用数据库存储。一个人可以往购物车里添加很多东西,所以总体记录数量很多。而且购物车里面的数据是不能归档成冷数据的,所以势必造成数据表体积庞大的问题。因此说,目前用数据库存储的方案多是NoSQL的,而不是用关系表存储。

1
1
kingofzihua
好的,谢谢老师
2019-07-02
共1条回复

x1988

2019-09-03

我想再问点更深的,对于购物车来说,如果是基于java + kafka + zookeeper架构下,使用redis集群来存储购物车数据好呢?还是使用mongodb来存储好呢?我看了京东、淘宝等多家的购物车系统,现在一般都不会在本地存储了,我是用京东app保存到购物车的东西,在京东web系统中也依然可以看到,那么,我认为这些购物车数据都是持久化的了,并非像您所讲的没有进行持久化。另外,我感觉购物车的设计与实现是非常重要的一环,请老师补全购物车章节吧......真的很重要,例如,秒杀的时候会让客户提前添加购物车啥的,如果购物车不讲,那这个系统数据库设计就阉割了很重要的一个功能,对于这么好的课程来说,真是太可惜了。。。。。

3
1
kingofzihua
感谢老板的助攻, 一般来说,所有的购物网站都会对购物车里的数据进行持久化存储,一般来说都是用redis来做吧, 这个问题你最好新建一个问题,你在这里提问,老师看不到,老师只能看到发起的问题,问题的回复,老师是看不到的
2019-09-03
共1条回复

x1988

2019-09-03

另外,还需要考虑用户登录状态下和非登录状态下是否可以使用购物车,例如像亚马逊、京东等都是可以在非登录状态下使用购物车的,因此,也需要有不同的业务处理。

1
1
kingofzihua
因为他们存储的是session id,所以你在未登录状态也是可以使用购物车的,同时你登录成功后购物车里面的session更新为你的用户编号
2019-09-03
共1条回复

x1988

2019-09-03

我已经新建了问题,等着老师的回答了。因为,9012年了,购物车很少在移动端本地存储了,也很少使用HttpSession存储了

1
1
kingofzihua
大多数都是用nosql存储,分布式+同步
2019-09-03
共1条回复

阿里新零售数据库设计与实战 (升级版)

解锁“新零售”业务让数据库实战能力再上一层楼

2111 学习 · 701 问题

查看课程