`
和你在一起
  • 浏览: 678262 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

淘宝iDataForum归来

阅读更多

 

今天参加了淘宝的iDataForum,收获不少。详细的PPT过段时间能发在官方网站上。

Topic 1:淘宝架构的变迁

这个topic主要讲淘宝这几年数据库面临的一些问题以及问题的解决。下面的数据还是老一些的数据。


  • 淘宝现在有10亿种商品。
  • 小文件和图片加起来有1000T
  • CDN流量为138G/s
  • 13亿/天(个人算了下,忙时3w~4w/s)的PV
  • 读写比例大致为10:1
  • 单个核心DB(Oracle+IBM小机+EMC高端存储),处理数的SQL为4w/s
  • 用户中心的api请求数为60亿次/天
  • search index,每秒增量build一次,每天全量build一次。build时间很快,因为数据分散到很多机器。
  • 淘宝现在的核心DB数量小于10个,mysql库有500+个。这个数据很有意义,可以看到在这种业务量级下的服务器数量。还不包括应用服务器和CDN服务器。


  • 使用Oracle Dataguard进行数据备份
  • 淘宝原先是基于lamp构建,后改为java/Oracle等,现在又考虑把一些非核心的使用mysql进行替代。
  • Mysql和Oracle的关系是考虑读写分离,Oracle上主要负责数据存储和持久化,Mysql为读取库(Master-Slave方式)。数据同步时延小于200ms
  • 淘宝对数据进行了垂直拆分的方式,把数据划分为“用户中心”、“商品中心”、“交易中心”等。这种中心的方式,使得各个中心能够隔离,同时可以针对各部分进行优化。
  • 中心的拆分带来的问题是完整数据可能需要从多个中心进行,淘宝使用了HFS(类似RPC方式,注重高效)负责各中心之间数据的交互。
  • 淘宝正在研发自主的数据库OceanBase。一个很抢眼的特性是,能够把随机IO合并为顺序IO。

Topic 2:数据库性能模型与容量规划

提出了以响应时间为核心的规划思想,有点意思。hellodba的博主,之前看过他的blog,讲的也是这方面的,这次更透彻了。
  • 数据库的时间模型,详见ppt吧。
  • 影响IOPS的因素:磁盘转速,寻道时延
  • 影响吞吐量的因素:磁盘转速,接口类型,内外部接口传输速率
  • Oracle的redolog:连续的随机IO。一个很贴切的说法。小于5ms是比较合理的。
  • Oracle的datalog:小于10ms是合理的。
  • 对Oracle数据库而言,CPU和IO时间外的其他等待事件应该小于5%

Topic 3:NoSQL数据库研发之路


对应NoSQL个人了解不是太多,讲的又是ttserver这种具体的应用。没记下什么东西。感觉一直在说的一个问题是,NoSQL产品很多,各自特性不同,需要根据自己的业务特点来选取适合自己的产品。


Topic 4:淘宝分布式数据层的前世今生

一个很好的东西,解决了Oralce数据到MySQL数据的复制问题。

  • 简称tddl
  • 重写的JDBC部分,加入的数据复制、数据拆分的功能
  • 接管了上层应用的SQL请求,由他负责进行和不同数据源交互
  • 实现了基于自定义规则的数据拆分
  • 使用了消息通知的异步方式进行数据复制(写入或更新成功后发送消息),由专门的服务器完成后续复制

 

5
3
分享到:
评论
4 楼 caoyun 2015-04-30  
楼主分析得很到位,选择淘宝是对的。
相关阅读:

u站联盟http://www.uzhanlianmeng.com/
3 楼 marcopolo 2012-10-16  
想了解一下,淘宝现在是不是彻底放弃了Oracle,改用Mysql?
2 楼 和你在一起 2010-12-18  
确实不错,淘宝的实力很强,明年还有机会~
stone2oo6 写道
不错不错,可以没能去现场膜拜下

1 楼 stone2oo6 2010-12-13  
不错不错,可以没能去现场膜拜下

相关推荐

Global site tag (gtag.js) - Google Analytics