应该将用户的帐户余额存储在数据库中还是动态计算?

001*_*001 10 c# architecture database-design application-design

用户的帐户余额是应该存储在数据库中还是动态计算?

为了获得准确的结果,计算它是动态有意义的,但是当有很多用户并且数据库变得非常大时,它可能是一个问题?

交易

  • Id(PK)
  • 帐户ID
  • 类型
  • 约会时间
  • etc..etc ...

账户余额

  • TransactionId(PK/FK)
  • 余额

Cla*_*ton 8

为了保持准确的审核,您应该记录影响用户帐户余额的每笔交易.这意味着您可以动态计算余额,但出于性能原因,我也会存储余额.为了确保平衡是正确的,我会有一个每日工作运行,从头开始重新计算余额.