基本信息: 我的Mysql数据库正在使用TokuDB,InnoDB,MyIsam表。有关提高Mysql并发插入和读取数据性能的问题
服务器信息: 16核心,64GB的RAM,CentOS的6.2,MySQL的v 5.5
过程:从一个文本文件到一个TokuDB表 1.导入大量的数据。 2.通过加入不同的表格来选择数据。
当进程1和2同时运行时,整个运行速度会慢很多。
有谁知道具体原因?
任何建议,以改善它?
基本信息: 我的Mysql数据库正在使用TokuDB,InnoDB,MyIsam表。有关提高Mysql并发插入和读取数据性能的问题
服务器信息: 16核心,64GB的RAM,CentOS的6.2,MySQL的v 5.5
过程:从一个文本文件到一个TokuDB表 1.导入大量的数据。 2.通过加入不同的表格来选择数据。
当进程1和2同时运行时,整个运行速度会慢很多。
有谁知道具体原因?
任何建议,以改善它?
将IO分隔到不同的磁盘/阵列。在单个分区/阵列上拥有所有IO会导致可怕的性能。如果可能的话,投资于IBM DS3524或HP Smart Array等专用驱动器阵列。通过光纤通道(或更好的SAS2)连接数据库服务器将会带来令人难以置信的性能提升。几年前,我停止将大量磁盘放入服务器中。在驱动器阵列上,MySQL的性能比服务器上的磁盘高5倍。
在tokudb,负载数据导入就当空表(特别是当你有非增量primarey键或唯一索引)
可能击中两个不同的地方盘... – 2012-07-12 16:45:32
我同意INFILE工作快得多。不管HDD的速度和“低”延迟,在双重过程中,它都会不断需要在磁盘的一部分与另一部分之间切换读取。如果导入和加入选择的过程发生很多,则可能需要考虑为SQL服务器添加专用SSD驱动器。由于没有磁盘和读写头,延迟几乎为零。 – 2012-07-12 16:49:47
您可以针对您的实验提供更多细节吗?了解你的模式,你如何加载数据,你选择的查询是什么样的,等等。 – tmcallaghan 2012-07-19 17:12:19