MySQL 是被广泛使用的一个数据库,但是 Web 开发人员会在大规模访问时的数据库扩展以及性能方面遇到问题。这也是近年来 NoSQL 数据库开始出现并逐渐繁荣的一个原因。对于关注 MySQL 可扩展性的 DBA 人员来说,当然非常希望看到像 Twitter 这样的网站是怎样运用和优化 MySQL 的。

Jeremy Cole 和 Davi Arnaut 是 Twitter DBA 和 DB 开发组的成员,他们表示,大部分 Twitter 数据都采用了 MySQL 作为持久化存储,包括发表的 Tweets、兴趣图、时间线,以及用户数据。由于 Twitter 的数据规模和访问规模, 他们不得不对 MySQL 源码进行修改优化以适应这种级别的应用。为了回馈社区,他们决定在 BSD 许可证下开源他们对 MySQL 所做的贡献。项目托管在 GitHub,主要的修改包括:

增加状态变量,特别是在 InnoDB 引擎内。这样能更有效地监控系统负载和运行状态。

在非一致性内存访问系统中优化内存分配。在初始化时就分配 InnoDB 的缓存池,如果内存不足则可迅速获得错误报告,这样在服务器面临内存压力时也能保证性能稳定。

减少查询超时中一些不必要的操作。这样服务器可以在毫秒级别主动取消耗时过长的查询。

以一种轻量的方式导入导出 InnoDB 的缓存池。这样可以让我们以最小的代价执行回滚。

针对 SSD 固态硬盘进行优化,包括 page-flushing 以及减少写操作以改善 SSD 硬盘寿命。

另外在4月12日,Twitter 还将对 Gizzard, 一个 MySQL 的分片复制框架进行详细介绍。如果有任何问题,都可以在 GitHub上向他们提 issue。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget

官方微博

TechTarget中国

gizzard mysql_Twitter将其使用的MySQL数据库开源相关推荐

  1. MySQL 数据库入门

    MySQL 是一个关系型数据库,使用 SQL 语言进行增删改查操作,目前属于 Oracle 旗下的产品. MySQL 数据库开源免费,能够跨平台,支持分布式,性能也不错,可以和 PHP.Java 等 ...

  2. mysql数据库限流方案_用于对MySQL数据库的并发操作进行控制的方法及装置的制造方法_3...

    的数据库操作特点,预先设置的所述第一限流类型可以不同于本实施例中的设置,同样可以实现本申请的技术方案,也在本申请的保护范围之内. [0103]步骤102-3:判断MySQL数据库的threads_ru ...

  3. 什么是数据库?MySQL数据库是什么?

    1.什么是数据库? 数据库简称 DB,是按照数据结构来组织.存储和管理数据的仓库,用户可以对文件的数据进行增加.删除.修改.查找等操作. 2.常见的数据库产品 ①  Oracle:oracle公司推出 ...

  4. .net连接mysql数据_.net连接MYSQL数据库的方法及示例!

    连接MYSQL数据库的方法及示例 方法一: 使用MYSQL推出的MySQL Connector/Net is an ADO.NET driver for MySQL 该组件为MYSQL为ADO.NET ...

  5. MySQL数据库+命令大全+常用操作

    格式:mysql -h主机地址 -u用户名 -p用户密码 1. 例:连接到本机上的MYSQL 首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -uroot -p,回车后提示 ...

  6. mysql数据库是一个软件呐_15款好用的mysql管理软件

    1. Induction Induction是一款用于理解数据关系的开源管理工具,它可用来探索行/列,运行查询和数据可视化等方面.该工具支持多种数据库,包括PostgreSQL,MySQL,SQLit ...

  7. c语言连接数据库例子,c语言操作mysql数据库小例子_互帮互助(C language MySQL database operation example _ mutual help).doc...

    这是精心收集的精品经典资料,值得下载保存阅读! c语言操作mysql数据库小例子_互帮互助(C language MySQL database operation example _ mutual h ...

  8. C语言对mysql数据库的操作

    C语言对mysql数据库的操作 原文:C语言对mysql数据库的操作 这已经是一相当老的话题.不过今天我才首次使用,把今天的一些体会写下来,也许能给一些新手带来一定的帮助,更重要的是供自己今后忘记的怎 ...

  9. JDBC连接MySQL数据库及演示样例

    JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...

最新文章

  1. Microbiome:植物发育和氮肥共同作用下的小麦根系微生物组
  2. 成功网管员必备“硬件”素质
  3. 无需安装的CLI才是最好的
  4. 这年头居然连MSDN Library都靠不住呀
  5. 小额贷款利息违法吗?
  6. VSCode 插件开发实例(WebView):微信读书 ^-^边撸代码边看小说^-^
  7. ftp改为sftp_浅谈 FTP、FTPS 与 SFTP
  8. (转载)(收藏)OceanBase深度解析
  9. Angular 发布首个正式的路线图
  10. Vijos P1409 纪念品分组【贪心】
  11. 【IJCAI 2020】篇章要素识别和篇章结构评分(下)
  12. 检测远程主机上的某个端口是否开启——telnet命令
  13. 尚硅谷 模拟w3school首页导航条练习
  14. C#office的0x8002801D或者0x80029C4A问题
  15. 2019最新补单安全小技巧
  16. 非线性控制1.3——SPR条件、Schur补引理
  17. 迅捷无线路由器虚拟服务器,迅捷无线路由器怎么设置 迅捷无线路由器设置步骤【详解】...
  18. Mounty 1.10免费版(NTFS硬盘工具)支持big sur
  19. HTML+JS+CSS筋斗云导航栏效果
  20. JAVASE笔记回顾

热门文章

  1. LiquiBase笔记
  2. CNN每一层都做了什么
  3. 《数据结构》课程设计(赫夫曼编码/译码器)
  4. 联发科芯片趋势
  5. 面试官:1亿条数据批量插入 MySQL,哪种方式最快?
  6. Raft协议中文翻译(3)
  7. 南京邮电大学c语言程序设计平台,程序设计报告-南京邮电大学-学生管理系统-c语言.doc...
  8. Android系统框架有哪些?
  9. python如何导入图片
  10. 链接器工具错误错误 LNK2019 无法解析的外部符号