设计工具
公司

Ceph RBD 上的大规模 MySQL® 数据库性能

Ryan Meredith | 2017 年 12 月

大家好,

在继续探索 Ceph® 12.2.1 (Luminous) 性能特性的过程中,我设置了一项测试,使用 MySQL® 数据库服务器和 Docker 容器来测试这个新版本的 Ceph。

测试的目的是衡量在使用 RBD 块设备作为数据库存储时,大型数据库的性能扩展情况。我还使用 Docker 容器来封装 MySQL 配置,以方便部署,因为 Docker 很酷。

Ceph 硬件:美光 IOP 优化的 Ceph 参考架构

我使用美光 IOP 优化的 Ceph 参考架构中的硬件进行测试:

Ceph 硬件:美光 IOP 优化的 Ceph 参考架构

我安装了最新的社区版 Ceph(Luminous 12.2.1),并针对每个美光 9100MAX 2.4TB NVMe® SSD 配置了 1 个 BlueStore OSD,同时还启用了 crc32c 校验和。

MySQL 服务器配置

MySQL 服务器(x10)

在 MySQL 服务器端,我使用 Docker 创建了 MySQL 5.7.19 映像并将其复制到 10 台 Supermicro 2028U 服务器上,这些服务器用作 MySQL 数据库服务器。

每台 MySQL 服务器上都有一个 1.5TB 的 RBD 映像,每个 RBD 映像存储一个类似 TPC-C 的 1TB MySQL 数据库。RBD 映像安装在 MySQL 服务器上,并按照每台 MySQL 服务器一个容器实例传递到 MySQL Docker 实例。

所有 MySQL 数据库文件都存储在 RBD 映像上,因此数据库实例为便携式,并受 Ceph 复制保护。

MySQL 的大小设置为可供每台服务器运行一个大型数据库,每个实例使用 224GB 的缓冲池。

美光 SSE TPC™-C 工具

我们的存储解决方案工程团队构建了一个类似于 TPC-C 的基准工具,该工具通过使用整个数据库作为活跃数据集来对存储施加压力。我们称之为“美光 SSE TPC-C 工具”,它安装在每个 Docker 实例中,并通过外部脚本同时在所有 MySQL 实例上启动。

MySQL 在 Ceph RBD 上的性能

我从 1 台 MySQL 服务器扩展到 10 台 MySQL 服务器,每台服务器都使用 Ceph RBD 映像进行 MySQL 存储。类似 TPC-C 的测试先运行 10 分钟的预热期(以达到稳定状态),然后进行了 30 分钟的正式测试。这项测试分别在 1 台 MySQL 服务器、5 台 MySQL 服务器和 10 台 MySQL 服务器的情况下重复进行。

Ceph RBD MySQL 性能
  每分钟处理的交易量(TPM) 平均 交易响应时间(毫秒) 99.9% 响应时间(毫秒)
1 台 MySQL 服务器 124,840 24 534 
5 台 MySQL 服务器 607,988 24 549 
10 台 MySQL 服务器 1,043,093 28  634 

MySQL 性能从 1 台 MySQL 服务器线性扩展到了 10 台服务器。在 10 台服务器上,修改后的 TPC-C 基准每分钟可处理 100 多万个交易,交易响应时间为 28 毫秒。

Ceph RBD MySQL 性能

在使用 Ceph 存储节点时,CPU 利用率通常是 Ceph 小块性能的限制因素。在这种情况下,MySQL 服务器的 CPU 利用率平均为 70%-80%,而 Ceph 存储节点的 CPU 利用率则从 7%(1 个客户端)上升到 64%(10 个客户端)。

添加 MySQL 客户端的开销更大,因为 Ceph 目前尚未得到充分利用。遗憾的是,我的 MySQL 服务器已经用尽,无法再继续增加客户端数量。根据这种扩展,我们可以合理地期望再增加 1 到 5 个 MySQL 客户端,并获得类似的结果。

是否希望了解更多信息?

我们正在撰写博客内容,以分享美光 SSE TPC-C 工具背后的方法,其中将更详细地介绍如何实现此处分享的 TPM 数字。通过这项成功的测试,Docker + MySQL 将成为我们用于 Ceph 和其他软件定义存储解决方案的标准测试。敬请期待!

对我们的测试或方法有其他疑问? 请在下方留言,或者发送电子邮件至 ssd@micron.com

Director, Storage Solutions Architecture

Ryan Meredith

Ryan Meredith is director of Data Center Workload Engineering for Micron's Storage Business Unit, testing new technologies to help build Micron's thought leadership and awareness in fields like AI and NVMe-oF/TCP, along with all-flash software-defined storage technologies.