Twitter宣布开源其MySQL优化成果

消息称,Twitter决定开放其MySQL数据库源代码。Twitter DBA和DB开发组的成员Jeremy Cole和Davi Arnaut表示,大部分Twitter数据都采用了MySQL作为持久化存储,包括兴趣图、时间线、Tweets以及用户数据。

由于Twitter的数据规模和访问规模,他们不得不对MySQL源码进行修改优化以适应这种级别的应用。为了回馈社区,他们决定在基于BSD许可证下开源MySQL。项目托管在GitHub上。

在该博客中,还列出了Twitter在MySQL上的主要改进工作,包括:

  • 增加状态变量,特别是在InnoDB引擎内。这样能更有效地监控系统负载和运行状态。
  • 在非一致性内存访问系统中优化内存分配。在初始化时就分配InnoDB的缓存池,如果内存不足则可迅速获得错误报告,这样在服务器面临内存压力时也能保证性能稳定。
  • 减少查询超时中一些不必要的操作,这样服务器可以在毫秒级别主动取消耗时过长的查询。
  • 以一种轻量的方式导入导出InnoDB的缓存池。这样可以让我们以最小的代价执行回滚。
  • 针对SSD固态硬盘进行优化,包括page-flushing以及减少写操作以改善SSD硬盘寿命。

英文链接:engineering.twitter.com(无法正常访问)

posted @ 2012-04-10 15:17  张长胜  阅读(156)  评论(0编辑  收藏  举报