MySQL数据库+至强7500=高效的并行性能[MySQL防范]
本文“MySQL数据库+至强7500=高效的并行性能[MySQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
在这里我们还是需求从至强7500的硬件性能开始讲起,这也便利DBA们更好的施展MySQL高效并行方面的上风.bitscn数据库频道向您举荐《MySQL数据库入门与精通教程》专题以便于更进一步理解MySQL.
英特尔与合作搭档携手公布至强7500
MySQL是一个快速、多线程、多用户的SQL数据库服务器,其呈现固然只有短短的数年时间,但凭仗着开放源代码的东风,它从众多的数据库中脱颖而出,成为众多DBA的首选.业内开辟人员圈子里也把LAMP体系(Linux+Apache+MySQL+PHP/Perl)作为最尺度的利用程序开辟平台.下面我们来看看MySQL数据库的三个主要特点,以及其对服务器的具体需求.
1、 MySQL数据库的三大特点及需求方向
1998年第一代MySQL关系型数据库诞生之初,就已经在数据库核心层面供应应了对多线程计算机之的完好支持,并且供应了面向C、C++、 Eiffel、Java、Perl、PHP、Python以及Tcl等编程语言的编程接口(APIs),支持多种字段范例并且供应了完好的操作符支持查询中的SELECT和WHERE操作.
恰是基于以上缘由,在很多DBA的心目中,只要通过进级服务器CPU和内存,扩容数据库集群便可以提高MySQL数据库性能.而因为MySQL的核心程序采取的是轻量级进程(LWP,也就是说大部份资源和其他进程共用,是一种实现多任务并行的办法),所以其对系统逻辑地址空间和资源的客观理性要求就非常高(这一点后文会注释).
由于MySQL供应了多种编程接口,因而在前端利用平台上具有其他数据库无法比较的上风.与x86服务器日渐风靡相对比,基于C语言、C++语言、乃至是JAVA语言的数据库调用也日益风行.而MySQL被广大DBA用户爱好的一个重要缘由就是其开放式架构在x86平台上的上风——比方ODBC for Windows使得MySQL支持全部的ODBC 2.5函数,从而让微软Access直接链接MySQL数据库,其利用得到极大的扩大.
此外,由于MySQL拥有一个非常快速并且安定的内存管理系统,因此在大内存环境中性能表现优异,在不少利用案例中,有DBA乃至直接将扩容内存作为提高系统坚固性和安定性的手段——事实上,MySql的安定性足以对付一个超大规模的数据库(后文我们也会有所介绍).
综上所述,MySQL数据库三大特点辨别是:核心程序支持多核心、多线程的并行计算;x86平台的多利用环境;快速安定的内存管理系统.呼应的,DBA在挑选MySQL数据库服务器的时刻需求考虑服务器内CPU的并行计算性能(或是多路集群的计算性能),复杂x86环境的支持性(为虚拟化数据库做考虑)和强盛的内存拓展性.
2、 为MySQL量身打造最符合数据库服务器
早年文的解析来看,MySQL数据库在性能需求层面主要对处理器提出了要求:并行计算性能强(或多路集群计算性能强),x86平台全兼容,优异的系统安定性及内存拓展.随着3月31日英特尔至强7500处理器公布,x86平台的计算性能和坚固性被推至了巅峰,MySQL数据库也迎来了为自己量身打造的处理器.
至强7500拥有8核16线程,集成了内存掌握器,并拥有4条QPI直连总线,使其每个处理器最多支持16条四通道DDR3 1333Mhz内存,这使得一个四路服务器最高支持256GB内存(4G*16条*4路),到达了x86平台有史以来的巅峰——与上一代至强7400处理器(6核6线程)相比,数据库性能晋升了2.5倍.此外,基于至强7500的服务器在拓展至8路的情形下不需求第三方节点掌握器的支持,并且最高可以扩大到256路服务器系统(需求第三方支持)——充分满意DBA对大规模数据库集群的计算需求.
这主要得益于至强7500所拥有的4条QPI总线,以及Nehalem-EX架构强盛的多路互联技术.此外,关于前文所提的MySQL轻量级线程对系统同享资源的依靠,这里要简单介绍一下其工作原理:在数据库计算中,会呈现几个计算线程共用一个数据的情形.因此MySQL将这几个计算分割在多个线程中举行,却并不分割所调用的数据,让他们统一拜候这一个数据,以到达最小化存取的目的,进而将有限的计算资源尽大概多的操纵到计算中,而不是数据读写中.这种计划的本意是好的,但是早期的x86平台受制于内存掌握器在北桥,以及处理器自身缓存不够大(处理器常用的数据普通先存在缓存里,之后才拜候内存),因此这种同享数据的拜候反而会造成耽误——每个线程都去读一次内存得到要计算的数据,几近平等于计算线程携带着相同数据所损耗的负载(牵扯较深,请自行理解).bitscn编者注:这就相当于中国的春运,大家都带着很多行李挤火车,铁路的负载损耗当然就很大.
总结为一句话,以往DBA们一向都存有质疑,认为MySQL的轻量级线程由于同享数据,实现了较高的并行效率(但只表目前算法层面),因为x86平台存取数据——特别是拜候内存时的低效,使得MySQL的上风很难表现.至强7500凭仗多达24MB的三级缓存以及集成在处理器内部的内存掌握器,将MySQL数据库频繁调用相同系统资源的操作大大降低,可以说充分施展出了MySQL数据库高效的并行性能.
关于内存扩大性方面,至强7500历史性的将每颗处理器仅支持8条内存槽拓展到支持16条内存.这给了用户极大的机动性——有的用户数据库规模大,运算量却并不大,因而仅需求内存多,而并不需求插满四个处理器.Dell前两天新推出的采取至强7500系列处理器的服务器中,创造性的采取Flex Memory Bridge技术,使得一个四路服务器在仅插两个处理器的情形下,每个处理器可以利用别的没插处理器的8条DIMM内存插槽(每个处理器标配了8个DIMM内存插槽),也就是两个处理器可以用全服务器内的32条内存插槽(请自行理解).
另一方面,英特尔在至强7500中加入了22条RAS特点,并初次在至强平台上实现了IA64上才有的MCA恢复功效,供应更强的坚固性.因而无论是在性能、可扩大性和坚固性上,都已经逼近RISC,乃至在某些指标上有所超越.而至强7500的x86生态环境越发开放,与MySQL呼应的Linux、Unix、Windows环境交融更精密,本钱方面也越发低廉.
基于以上解析,可以看出至强7500无论是在计算性能上、内存扩大性方面、坚固性方面以及丰富的利用环境充分施展了MySQL数据库的三大特点.毋庸置疑,至强7500将x86平台带到了一个新的高度,而DBA们也得益于x86平台与MySQL数据库开放式的强强联手,可以将企业MySQL数据库的利用推向新的高度.
以上是“MySQL数据库+至强7500=高效的并行性能[MySQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |