TMySQL核心技术:在线加字段与BLOB压缩

需积分: 10 5 下载量 29 浏览量 更新于2024-07-24 收藏 1.03MB PDF 举报
“腾讯大讲堂--TMySQL核心技术内幕” 这篇资料是关于腾讯内部使用的TMySQL数据库系统的详细介绍,由陈福荣(vinchen)——TMySQL的核心开发者和主要负责人分享。vinchen具有在数据库领域的丰富工作经验,曾在达梦数据库从事DM7内核开发,后加入腾讯负责DB高可用性和TMySQL项目。 TMySQL是腾讯为了适应互娱事业群业务发展的需求而定制的一个MySQL分支版本,基于MySQL 5.5.24进行改进。它包含了多项创新特性,如在线加字段、BLOB列压缩等,并且借鉴了其他优秀的补丁。TMySQL的目标是解决MySQL在大规模数据运营中遇到的挑战,如DDL操作、数据恢复和存储空间利用率等问题。 TMySQL的版本历史可以概括如下: - TMySQL 1.0 (2012.09):首个发布版本,支持InnoDB的在线加字段操作。 - TMySQL 1.1 (2012.12):增加了对分区表在线加字段的支持,安装量显著增长。 - TMySQL 1.2 (2013.02):集成Googletcmalloc组件,减少大量分区表内存碎片问题。 - TMySQL 1.3 (2013.06):支持MySQL 5.0原地升级,覆盖更多核心业务数据库。 - TMySQL 1.4 (2013.10):引入InnoDB BLOB字段压缩,Binlog并行恢复以及增强的诊断视图。 在线加字段是TMySQL的重要特性之一。在MySQL中,添加字段通常会导致表锁定,阻塞所有写操作,这是一个耗时的过程,可能会影响业务连续性。TMySQL通过改进这个过程,使得在线加字段成为可能,减少了对业务的影响。这个特性在处理如游戏角色属性增加等场景时尤其有用,避免了长时间的服务中断。 BLOB列压缩是另一个关键特性,它解决了大数据存储的效率问题,特别是对于那些包含大量BLOB类型数据的表。通过压缩,可以节省存储空间,提高I/O性能,同时降低运维成本。 此外,TMySQL还引入了Binlog并行恢复,提升了数据库在故障恢复时的速度。诊断视图的加强则提供了更强大的监控和调试工具,帮助DBA更好地管理和维护数据库系统。 TMySQL是腾讯针对其业务需求对MySQL进行深度定制的产物,它通过一系列技术创新和优化,解决了传统MySQL在大规模数据环境下的痛点,提高了数据库服务的稳定性和效率。这个项目不仅体现了腾讯在数据库技术上的深厚积累,也展示了他们对开源社区的积极回馈态度。