弃oracle选mysql 解读淘宝开源应用实践

来源:it168 作者:it168
  

  据了解,淘宝(Taobao)DBA丁原主要负责淘宝整体业务的数据库架构把握,分布式数据库设计。几乎参与了淘宝所有业务系统设计,主导了最近几年核心业务的数据库架构改造,喜欢复杂业务简单化。丁原从从两个方面介绍了淘宝数据库的应用历程。一、淘宝数据库的5年;二、在使用开源MYSQL数据库在使用中遇到的问题。

  据丁原透露,淘宝从2008年开始尝试使用开源MYSQL数据库,2010年到现在属于开源MYSQL数据库应用发展阶段。

  为什么选择开源

  在业界商业数据库有国外有oracle、DB2,那么,为什么淘宝不去选择这些数据库而去选择开源的数据库产品?对于此,丁原认为,放弃商业数据库而选择开源数据库更多的是成本趋动因素所影响,第二个原因公司的自身技术积累、商业软件在淘宝优势逐渐弱化,以及其它客观条件所影响。

弃oracle选mysql 解读淘宝开源应用实践
▲淘宝DBA 丁原

  提到成本因素,丁原指出,淘宝刚开始成本并不是很高,但是在2007年年以后,成本在不断的增加。那么,成本究竟有多高,丁原以淘宝某业务的真实数据展示了高成本:

  2010年DB+硬件的投入在1100万左右;

  2011年DB+硬件的投入在2200万左右;

  2012年DB+硬件的投入在4400万左右;

  这只是单项某业务所需要的成本,那么可想而知整体的压力会非常大,既然有这么高的成本,为什么不去尝试一下开源的产品?

  淘宝开源数据库的挑战

  面对高成本,淘宝开始尝试开源数据库,在开始之初面临着非常大的挑战,丁原介绍,淘宝开始尝试开源面临的挑战两方面的挑战:

  一、团队内部

  1、 团队人员非常,非常擅长商业DB;

  2、 对于开源的DB的理解一穷二白,需要快速积累,放弃你最熟悉的,选择重新开始;

  3、 原有思维方式固化,改变需要时间;

  4、 其它

  二、团队外部

  1、为什么要选择开源,好处在于哪些方面;

  2、用了开源软件以后, DBA还是最专业的吗;

  3、打破原有集中式的思维,换一种方式同时还要考虑更多的东西;

  4、其它

  淘宝开源数据库的推进过程

  面对淘宝选择开源数据库的挑战,在推进开源数据库中存在的很大的阻力。丁原指出,淘宝在推进开源数据库过程中经历了以下几个阶段:

  第一、推进过程比较慎重,持续很久,对于我们自己来说,尝试阶段(小业务,小范围开始);

  第二、很纠结,积累阶段(使用过程中开发,DBA面临的问题,解决问题);

  第三、顺其自然,继续积累验证;

  第四、大规模可用阶段。

  开源数据库应用的关键点

  丁原向与会的DBA介绍,开源数据库应用有几个关键点需要注意:

  开发易用性;

  成熟的中间层,尽量减少开发的难度;

  DBA易运维;

弃oracle选mysql 解读淘宝开源应用实践
▲MYSQL的性能表现

  强大的MYSQL底层运维平台;

  丁原进一步指出,在未来商业数据库和开源数据库解决方案,哪个更加昂贵,现在很难知道 ,但丁原本人透露,开源的数据库未来肯定要比商业数据便宜。

 

 

开源MYSQL在淘宝的实践历程
▲商业BD与开源DB的区别

开源MYSQL在淘宝的实践历程
▲企业使用开源MYSQL通常的顾虑

开源MYSQL在淘宝的实践历程
▲MYSQL的应用是否会造成数据的丢失

开源MYSQL在淘宝的实践历程
▲淘宝针对MYSQL数据问题的解决办法1

开源MYSQL在淘宝的实践历程
▲淘宝针对MYSQL数据问题的解决办法2

 

 


▲MYSQL主备库延迟解决方案基本思路


▲MYSQL主备库延迟解决方案


▲MYSQL主备库逻辑复制的风险


时间:2012-04-13 20:43 来源:it168 作者:it168 原文链接

好文,顶一下
(17)
100%
文章真差,踩一下
(0)
0%
------分隔线----------------------------


把开源带在你的身边-精美linux小纪念品
无觅相关文章插件,快速提升流量