外卖功能中15分钟未支付则自动取消订单,为什么不直接数据库物理删除订单,而要设置为取消,这样的订单不是冗余数据吗?
在饿了吗,美团等需要指定时间内支付,没支付则取消订单,事实上自动取消的订单一般都是无效订单吧,没有任何作用,那为什么还要保留该订单呢,直接物理删除不是更好吗,免得占用数据库
取消的订单也是有其数据意义的, 这些数据也是需要被挖掘,被分析的.######电商里面像订单原则上是不允许物理删除的,都是用户行为的一部分,以后的分析、风控之类的都需要这部分数据######物理删除会破坏数据库索引结构######这样的做法好处是可以用于记录的用户行为,用户订单数据的采集,假如用户频繁恶意的提交订单,但是就是不支付,物理删除的话就没有证据证明用户的行为,把这些数据保留下来就能很直观的处理,并且可以根据这些订单判断出用户的个人习惯。占用数据库就不用说了,分库分表,数据库无压力######数据库要保留起来为以后大数据分析使用######用户订单不光是“一条记录”那么简单,其中关联了相关的支付记录。你说你扣了10块(-10),但是交易失败,订单取消,难道就不要退还你10块了(+10)。这样才能达到平衡,否则就是所谓的坏账。至于楼上说的索引、大数据等也都是对的,但肯定不是关键因素######交易类的产品,基本上不会有物理删除的动作,物理删除即断档,没法回滚和追溯。再者,删除操作的成本并不低。 有些人提到要做数据分析,行为分析,并不是最重要的原因,因为这些用户分析可以通过其它行为数据获得。######取消也是订单的正常生命周期######冗余数据是这个意思的么######相当于飞机上的黑盒. 电商系统不应该出现"删除"功能, 这是我多年工作的经验.
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。