电商中有转账,提现,支付等业务。关于这种现金业务该如何设计流水表??
比如提现,是否需要一个提现申请表,提现流水表?
一个提现申请,在提现申请表中只有一条记录,那在提现流水表中该如何记录?
我觉得这个要根据你的交易量去决定,因为如果你的交易比较频繁,对同一条记录可能存在读跟修改的冲突,尽管有乐观锁可以控制数据的准确性但是这个性能可能还达不到要求,如果将记录的变化跟历史记录分开存放,通过一定方法保证数据的一致性,性能也会有所提高
收起这个设计更多的还是参考:1)你们想要保存哪些信息,2)之后怎么分析这些记录,3)怎么让用户查看自己的提现信息。
常规的做法,就是跟订单表是类似的,就是提现申请一张主表,然后把具体的明细和步骤记录为提现流水(订单详情),这样用户可以直观的看到自己的提现状态,点进去进一步可以看到详细过程。在设计的时候可以利用数据库的equippartition的特性,很容易的做到记录检索和之后的数据分析。
当然你也可以把所有的信息都记录到一条记录上,之后所有的改变都更新这条记录,这样会把表变的很宽,甚至有些中间状态会被覆盖,再添加日志即可。
收起