高性能MySQL.读书笔记(五)MySQL分支与变种

Percona Sereve(PS或PS MySQL)

Percona Server是个与MySQL向后兼容的替代品。它尽可能不改变SQL语法、客户端/服务器协议和磁盘的文件格式。任何运行在MySQL上的都可以运行在Percona Server上而不需要修改。切换到Percona Server只需要关闭MySQL和启动Percona Server,不需要导入和重新导入数据。切换回去也不麻烦,而这一点实际上非常重要:许多问题是通过临时切换解决的,使用增强的方法来诊断,然后切回到标准MySQL。

 

PS只对标准MySQL中需要并且可以产生显著的地方做改进。我们相信大部分用坚持使用标准的MySQL版本是最好的选择,并且努力与原版保持尽可能的相同。

 

注:有一本书《高性MySQL》(High Performance MySQL)就是由Percona Server三位创始人写的,很不错的一本书。

 

PS包括Percona XtraDB存储引擎,即改进版本的InnoDB。这同样是个向后兼容的替代品。例如,如果创建一个使用InnoDB存储引擎的表,PS能自动识别并用PS XtraDB替代之。

 

XtraDB还提供了很多InnoDB不具备的有用的功能。例如:在多核CPU上面的性能和伸缩性要更好;对于内存的分配和使用也要更好;也解除了InnoDB的很多限制;提供了比InnoDB更多的配置和性能监控参数。

 

对于高负载的MySQL应用来说,如果不需要MySQL官方技术支持的话,完全可以使用XtraDB来代替InnoDB存储引擎。此外,Percona还提供了打了补丁的MySQL版本,这些补丁对MySQL很多方面进行了改进,性能提高,增加更多监控参数等等。

 

 

MariaDB

MariaDB是由MySQL的创建者Monty Widentius离开Sun后创立的。

MariaDB有什么不同呢?与Percona Server相比,它包括了更多对服务器的扩展。它使用Aria存储引擎代替了MyISAM,是MyISAM的崩溃安全版本。MariaDB直接利用来自Percona的XtraDB引擎,由于它们使用的是完全相同的引擎,因此每次使用存储引擎时没有显著的差别。

 

MariaDB是原版MySQL的超集,因此已有的系统不需要任何修改就可以运行,就像Percona Server一样。然而,MariaDB对有些场景可以更好地胜任,例如复杂的子查询或多表关联。

 

总体来说,这两个产品对事务支持的引擎都是XtraDB,XtraDB是Percona创建和编写。

Percona在OLTP方面性能更佳一点,而MariaDB在OLAP方面速度更快。

下面这里有一个MySQL各分支版本的一个测试结果对比:

 

独享是指:使用独立表空间模式;1bp/8bp 分别指:设置innodb buffer pool instance为1或者8。

 

TPCC数据初始化对比

 

TpmC结果对比

 高性能MySQL.读书笔记(五)MySQL分支与变种_第1张图片

TpmC结果对比本次对比测试中,在模式 "percona 5.6.6-m9-56(独享,1 bp)"(黄色底) 下的综合TpmC效率最高。因此也直接以它为基准,对比了其他几种测试模式的TpmC效率。

 高性能MySQL.读书笔记(五)MySQL分支与变种_第2张图片

从测试结果来看,Percona 5.6的性能仍然有较大优势;另外,和以前版本对比,在一定线程数之内,并发线程数越多,TpmC效率也越高。

 

 

 

你可能感兴趣的:(mysql,percona)