在交易系统设计中,一张表插入删除,和两张表分别插入删除,效率差别大吗,求指导
方案A:
比如我有一张交易表和一张交易历史表,交易表里面有一个Delete的列,delete为true表示需要删除,新插入的数据delete总是为false。
这种交易表吞吐量很大,需要同时插入新数据,和处理删除delete为true的行并插入交易历史表,但是由于插入和删除的行不会相同(新插入的数据delete总是为false),所以应该不会有数据被锁住不让删的情况,这是方案A
方案B:
建2个交易表, A, B, 一个交易历史表History
A,B(交替)用来插入未来一段时间的交易数据,比如未来5分钟,当A表为插入数据表时,B表为处理数据表,B处理完数据后插入History表,然后下一个时间段,B表为插入表,A表为处理表。A B 表交替进行插入处理。
这两种方案,我觉得应该是B方案好,可是能好很多吗,效率能提高 50%吗, 因为方案A不会出现数据锁的情况,应该不会太差吧