单表同时被频繁更新和查询的设计方案

假设数据库中有一个表test 含有两个字段,分别是id 和name,id为主键。如果该表的两个字段都被频繁的读写,请问在表和数据库等的设计上有什么解决此并发问题的思路没。也可以考虑在数据库结构无法调整的情况下,应用程序上解决该问题的思路。
参与27

24同行回答

wangweilongwangweilong数据库管理员某大
1、读的隔离级别尽量使用ur2、设置db2set evaluncommitted 和 skipinserted 参数3、调整合适的locklist和maxlock参数,避免锁升级4、考虑使用SSD盘,提高IO响应5、根据查询和更新的where条件,考虑在name字段添加索引...显示全部
1、读的隔离级别尽量使用ur
2、设置db2set evaluncommitted 和 skipinserted 参数
3、调整合适的locklist和maxlock参数,避免锁升级
4、考虑使用SSD盘,提高IO响应
5、根据查询和更新的where条件,考虑在name字段添加索引收起
互联网服务 · 2015-01-04
浏览2008
回复 24# hall0909    可以对只读库做只读操作,或者通过应用程序对数据库进行读写访问控制,具体可以参照“张东焕”老师的回复。显示全部
回复 24# hall0909


   可以对只读库做只读操作,或者通过应用程序对数据库进行读写访问控制,具体可以参照“张东焕”老师的回复。收起
证券 · 2015-03-03
浏览2628
hall0909hall0909项目经理whcyit
如果是读写分离的话,如何保持数据的一致性啊显示全部
如果是读写分离的话,如何保持数据的一致性啊收起
软件开发 · 2015-03-02
浏览2582
hall0909hall0909项目经理whcyit
我在运维工作中也遇到了这样的问题,存在有一张表的数据被频繁delete然后insert,更新的数据量在1000万行左右,经常会发生死锁的情况,导致数据无法insert或者无法delete。目前我能采用的运维的办法就是定期RUNSTATS和reorg表与索引,但是总感觉会有问题。也想学习一下如何从设计...显示全部
我在运维工作中也遇到了这样的问题,存在有一张表的数据被频繁delete然后insert,更新的数据量在1000万行左右,经常会发生死锁的情况,导致数据无法insert或者无法delete。目前我能采用的运维的办法就是定期RUNSTATS和reorg表与索引,但是总感觉会有问题。也想学习一下如何从设计层面就尽量解决这样的问题。收起
软件开发 · 2015-03-02
浏览2630
db2dbdb2db研究学者银行
这个并发问题,主要是latch等待问题,建议方案:1、提高该表的pctfree,reorg生效。2、hadr备库可读。多库分担并发压力。3、表分区4、拆表为多个分表(比如按id对应的业务类型)5、应用层面做redis缓存...显示全部
这个并发问题,主要是latch等待问题,建议方案:
1、提高该表的pctfree,reorg生效。
2、hadr备库可读。多库分担并发压力。
3、表分区
4、拆表为多个分表(比如按id对应的业务类型)
5、应用层面做redis缓存收起
银行 · 2015-02-14
浏览2607
回复 20# 张东焕    老师,您的意思是,通过应用程序而不是默认的锁来控制相应的隔离级别,通过这样的方式实现对只读数据库的业务查询控制,是这样么?显示全部
回复 20# 张东焕


   老师,您的意思是,通过应用程序而不是默认的锁来控制相应的隔离级别,通过这样的方式实现对只读数据库的业务查询控制,是这样么?收起
证券 · 2015-02-06
浏览2628
张东焕张东焕技术总监IBM官方授权讲师
使用 DB2 V9.5 乐观锁定特性改善并发性http://www.ibm.com/developerwork ... les/dm-0801schuetz/显示全部
使用 DB2 V9.5 乐观锁定特性改善并发性

http://www.ibm.com/developerwork ... les/dm-0801schuetz/收起
IT咨询服务 · 2015-02-05
浏览2609
回复 17# ydliujiang    读写分离是这个样子的,我明白了,谢谢!显示全部
回复 17# ydliujiang


   读写分离是这个样子的,我明白了,谢谢!收起
证券 · 2015-02-05
浏览2601
回复 16# richard_macy    比如频繁插入显示全部
回复 16# richard_macy


   比如频繁插入收起
证券 · 2015-02-05
浏览2598
ydliujiangydliujiang数据库管理员IBM
回复 12# stevenluffy 读写分离就需要从应用上分开。读就是读,不会去更新,如果你的操作会有更新就等于按写操作去规划。否则和你的假设分离了的前提矛盾。显示全部
回复 12# stevenluffy

读写分离就需要从应用上分开。读就是读,不会去更新,如果你的操作会有更新就等于按写操作去规划。否则和你的假设分离了的前提矛盾。收起
金融其它 · 2015-02-03
浏览2632

提问者

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2015-01-03
  • 关注会员:2 人
  • 问题浏览:40827
  • 最近回答:2015-03-03
  • X社区推广