MySQL slave上的重复写入负载

时间:2016-11-17 17:31:01

标签: mysql io database-replication

我们在Debian 8上使用Percona MySQL 5.6作为电子商务聚合器。为此,有一个主后端服务器执行整个ETL(处理来自合作伙伴的产品供稿)和前端Web服务器使用的从属MySQL服务器。它是一个包含大约600GB数据的单一产品数据库。

两台机器都配有带数据中心系列SSD的RAID10。 Master MySQL是双Xeon E5,内存为128GB,slave是单个Xeon E5,内存为64GB。我们的问题是,ETL是如此I / O繁重(具有数千IOPS),主机能够处理I / O负载,但从服务器无法跟上复制。大多数工作都是在ramdisk中完成的,只有真正的必要数据已经写入数据库了。

从属有更多的读取而不是写入,但复制无法赶上。有哪些选项可以缩放从属服务器上的复制写入(即I / O负载)?

编辑2016-11-18 :对于“选项”,我不仅要求优化MySQL,还要求其他可以更好地处理这种情况的技术或软件。

1 个答案:

答案 0 :(得分:1)

升级到5.7应该有望解决您的问题:http://mysqlhighavailability.com/multi-threaded-replication-performance-in-mysql-5-7/

这通常是主机耗尽写入容量的先兆。你应该尽快开始考虑分片。您可以查看我参与的YouTube vitess.io项目。