请教大佬一个问题,有一个需求更新 30 张表的一个字段,怎么去实现?

2022-10-11 15:53:14 +08:00
 longmeier90
我们公司业务场景是 把两个患者合并成一个患者,但是就需要把库里的 30 张表(未来会更多表...都是加的冗余字段)的信息更新一下。
那么线上系统发起一个需求,怎么能在不影响性能,而且还有保证信息的完整性的情况下去实现。

1. 如果保证完整性就需要加事务,但是就会锁表造成系统卡顿,app 转圈(之前的一些其他业务事务出现类似的)影响线上业务。
2. 不加事务,怎么能保证数据的一致性。

3.向这种场景应该是常见的吧,大佬都是怎么设计的?

3674 次点击
所在节点    Python
43 条回复
hopingtop
2022-10-12 17:07:05 +08:00
OP 这个应该不是一个一次性需求吧,说了冗余字段还会有。
其实在设计冗余字段的时候,就相当于大部分场景放弃了一致性。
那么其实可以 梳理一下业务,同步+异步一起处理, 或许梳理下来就只有 1-2 表 要求数据一致性呢,这不就好办,都兼顾到了嘛,如果 5-5 开,那也能减少大部分时间。真要是都要保证数据一致性,那冗余字段这个设计本来就是你们当前系统的大 BUG !
longmeier90
2022-10-12 22:25:29 +08:00
@Maxwe11 大佬有没有关于数据分层思想的资料推荐一下,想看看
Maxwe11
2022-10-12 22:37:19 +08:00
@longmeier90 这种都比较理论,你就搜搜传统数据集市设计的内容看看,但通用方法论实际用的时候,还是个经验和玄学的综合体,最后都是取舍平衡,那些通用方法论能实际套用的很少,只能说是借鉴思想。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/886103

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX