为了账号安全,请及时绑定邮箱和手机立即绑定

什么是大规模系统的最佳方法 - DB 过程或编程逻辑

什么是大规模系统的最佳方法 - DB 过程或编程逻辑

绝地无双 2021-07-12 12:05:14
我真的陷入了一个难题。我们使用某种语言(java/php/python)作为前端和数据库之间的中介。我们使用 JPA/hibernate 来平滑这个数据流。如果我们与任何DBA核对,大部分数据处理、计算、作业处理都可以直接在数据库端完成,借助过程或触发器也具有良好的可扩展性。同样的事情,如果在 java / php 端处理它需要更长的时间,而且问题可能会再次出现可扩展性,因为事务处理不是很简单。我想澄清我的想法是:1] 使用 DB 过程处理大多数可能的逻辑是否真的更好/正确的方法(例如处理影响许多表的大块处理)?2] DB 能否实现可扩展性,而编码不能实现?3] 有没有更好的方法来看待这个数据库和编码关系?提前致谢。
查看完整描述

1 回答

?
万千封印

TA贡献1891条经验 获得超3个赞

嗯,根据你说的,你猜对了,

但是,并不总是你会有正确的答案,例如,我在一个有6M+记录的系统上工作,你需要分析系统并检查数据库性能,当你启动时,性能会很好,但是随着系统的扩展并且您开始拥有越来越多的记录,在这里您将知道是否可以将触发器和所有内容保留在数据库中,或者您需要对它们进行硬编码,但据我所知,您很高兴拥有在数据库中完成的计算,因为它在 3 个系统之间共享。

所以我的建议是,将计算保留在数据库中,除非由于性能或任何因素而必须移动它们。


查看完整回答
反对 回复 2021-07-14
  • 1 回答
  • 0 关注
  • 122 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信