【问题标题】:Need help understanding Twitter's open sourced Mysql changes/updates [closed]需要帮助了解 Twitter 的开源 Mysql 更改/更新 [关闭]
【发布时间】:2012-04-23 19:07:43
【问题描述】:

Twitter 已经开源了他们的 Mysql 源代码。

这篇博文http://engineering.twitter.com/2012/04/mysql-at-twitter.html 提到了不同的变化。

我曾使用 Mysql 作为开发人员执行查询,但从未深入挖掘其源代码。我尝试浏览 github https://github.com/twitter/mysql 上的源代码,但不知所措。 所以我想我会在这里发帖并寻求帮助。

  1. 我想更好地了解 Twitter 的更改是如何改进的 Mysql 超过 Oracle 的版本。

  2. 如果我要在 Oracle 的版本和 Twitter 的版本之间做一个苹果对苹果的比较,两者之间的具体优势和劣势是什么。

我脑海中浮现出更多的问题。

我知道这是一个高级数据库主题,但我很想了解它。

【问题讨论】:

    标签: java mysql sql database-design twitter


    【解决方案1】:

    他们将这些变化描述为:

    添加额外的状态变量,特别是来自内部的 创新数据库。这使我们能够更有效地监控我们的系统,并 在处理生产工作负载时更好地了解他们的行为。

    优化大型 NUMA 系统上的内存分配:分配 InnoDB 的 缓冲池在启动时完全启动,如果内存不可用,则快速失败, 即使服务器内存不足,也能确保性能随时间推移 压力。

    通过改进的服务器端减少不必要的工作 语句超时支持。这允许服务器主动 取消运行时间超过毫秒粒度超时的查询。

    使用安全轻量级的方式导出和恢复 InnoDB 缓冲池 方法。这使我们能够构建工具来支持滚动重启 我们的服务以最小的痛苦。

    针对基于 SSD 的机器优化 MySQL, 包括页面刷新行为和减少对磁盘的写入 延长使用寿命。

    这些对于 Twitter 规模的网站很重要。如果您正在构建必须扩展到该大小的东西 - 是的,这些更改会有所帮助。但是,如果您要构建的东西更像世界上所有其他温和流行的网站,您可能不需要关心它们的变化。大多数运行 MySQL 的大型网站都直接从该发行版运行它。

    【讨论】:

    • 是的,我知道这是一个非常自定义的构建,不会在任何地方使用。但我只是想了解他们的不同之处。
    猜你喜欢
    • 2013-12-06
    • 2012-11-17
    • 1970-01-01
    • 1970-01-01
    • 2010-11-07
    • 1970-01-01
    • 1970-01-01
    • 2013-05-04
    • 1970-01-01
    相关资源
    最近更新 更多