数据库双活方案有哪些局限?有什么可以继续改进的地方呢?

2回答

孔再华孔再华  数据库运维工程师 , 中国民生银行
aixkevinpenguin23拓伟神等赞同了此回答
数据库双活在我行已经上线三年,期间陆续迁入了6套优先级比较高的系统。整个运行过程算是达到了预期。也经历过网络故障等实际考验,表现都如预期。所以这个高可用性和可维护性都得到了验证。但是这个方案在满足数据0丢失,可用性非常高的情况下,还是牺牲了部分性能。因为距离的...显示全部

数据库双活在我行已经上线三年,期间陆续迁入了6套优先级比较高的系统。整个运行过程算是达到了预期。也经历过网络故障等实际考验,表现都如预期。所以这个高可用性和可维护性都得到了验证。但是这个方案在满足数据0丢失,可用性非常高的情况下,还是牺牲了部分性能。因为距离的原因,写盘和通信都不可避免延长。所以迁入地系统在跑批的时候明显比以前长,这也是没办法的。在这个方案里面,我觉得从技术上还有比较多的地方需要改进。一方面热点数据问题,虽然我们通过分区表随机索引等方式打散热点数据,但是还是需要从数据库技术层面给出更好的改进。另一方面是节点之间的通信,因为延时的缘故,还需要从技术上继续减少交互。同时带宽不是问题,通信的并发性也需要从技术上去解决。相信如果上述几个方面能够得到改进,这个方案将会得到更大的运用空间。

收起
 2017-09-15
匿名用户匿名用户
王磊磊赞同了此回答
比如双(多)方都在录入数据,那么数据一致性怎么保证?比如唯一主键问题,表间约束问题等等。还有一个致命问题,数据竞争。如铁路售票,一个座位不能卖给两个人。在多活情况,如果网络问题,几个服务器孤立了,一张票就可能卖给多个人。铁路售票,设计了容灾系统,本质上就是多活,但从来没启用过...显示全部

比如双(多)方都在录入数据,那么数据一致性怎么保证?比如唯一主键问题,表间约束问题等等。
还有一个致命问题,数据竞争。
如铁路售票,一个座位不能卖给两个人。
在多活情况,如果网络问题,几个服务器孤立了,一张票就可能卖给多个人。
铁路售票,设计了容灾系统,本质上就是多活,但从来没启用过,也根本没有意义。
最多也就是防止丢失数据。这个对银行有意义。

以上说的是局限性。

收起
 2017-09-15

提问者

李军华系统工程师, 攀枝花市商业银行

问题状态

  • 发布时间:2017-09-14
  • 关注会员:3 人
  • 问题浏览:205
  • 最近回答:2017-09-15
  • 关于TWT  使用指南  社区专家合作  厂商入驻社区  企业招聘  投诉建议  版权与免责声明  联系我们
    © 2017 talkwithtrend — talk with trend,talk with technologist 京ICP备09031017号-30