首页 - 通讯 - openGauss学习笔记-80 openGauss数据库管理-内存优化表MOT管理-内存表特点-MOT性能基准

openGauss学习笔记-80 openGauss数据库管理-内存优化表MOT管理-内存表特点-MOT性能基准

2023-10-10 16:20

? 80.2 MOT测试总结
  • 80.3 MOT高吞吐量
    • 80.3.1 Arm/鲲鹏2路128核
    • 80.3.2 Arm/鲲鹏4路256核
    • 80.3.3 x 86台服务器
    • 80.4 MOT 低延迟
    • 80.5 MOT 恢复时间目标 (RTO) 和冷启动时间
      • 80.5.1 高可用性 RTO
      • 80.5.2 冷启动恢复时间
    • 80.6 MOT资源利用率
    • 80.7 MOT 数据采集速度
  • openGauss学习笔记-80个openGauss数据库管理-内存优化表MOT管理-内存表特点-MOT性能基准

    本节介绍openGauss内存优化表(MOT)的MOT性能基准。

    80 MOT 性能基准

    我们的性能测试基于工业界和学术界常用的TPC-C基准。

    测试使用 BenchmarkSQL(请参阅MOT 示例 TPC-C 基准)并使用交互式 SQL 命令而不是存储过程来生成工作负载。

    评估 openGauss MOT 性能和磁盘性能的所有测试均使用 MOT 中的同步日志记录和优化的 group-commit=on 版本。

    最后,我们进行了额外的测试,以评估 MOT 快速捕获大量数据的能力,作为中间层数据捕获解决方案的替代方案。

    所有测试将于2020年6月完成。

    以下是各种类型 MOT 的性能基准:

    80.1 MOT 硬件

    本次测试使用的服务器满足10GbE组网且配置如下:

    • 基于Arm64/鲲鹏920的2路服务器,型号TaiShan 2280 v2(128核),800GB RAM,1TB NVMe磁盘。操作系统是openEuler。
    • 基于Arm64/鲲鹏960的4路服务器,型号TaiShan 2480 v2(256核),512GB RAM,1TB NVMe磁盘。操作系统是openEuler。
    • Dell x86 服务器,2 路 Intel Xeon Gold 6154 CPU @ 3Ghz,18 核(超线程开启时总共 72 核),1TB RAM,1TB SSD。操作系统是CentOS 7.6。
    • x86 AMD 服务器,8 路 Intel(R) Xeon(R) CPU E7-8890 v4 @ 2.20GHz,24 个核心(启用超线程时总共 384 个核心),1TB RAM,1.2 TB SSD(Seagate 1200 SSD) 200GB、SAS 12Gb/秒)。操作系统是Ubuntu 16.04.2 LTS。
    • 华为 x86 服务器,4 路 Intel(R) Xeon(R) CPU E7-8890 v4 @ 2.2Ghz(共 96 核,启用超线程),512GB RAM,SSD 2TB。操作系统是CentOS 7.6。
    80.2 MOT测试总结

    MOT 将磁盘表性能提升 2.5 至 4.1 倍,在 Arm/鲲鹏 256 核服务器上达到 480 万 tpmC。测试结果清楚地证明了 MOT 扩展和利用所有硬件资源的卓越能力。随着CPU插槽和服务器核心数量的增加,性能也会相应跃升。

    MOT在Arm/鲲鹏架构下最高可达30,000 tpmC/核,在x86架构下最高可达40,000 tpmC/核。

    由于更高效的持久化机制,MOT中的复制开销在Arm/鲲鹏主备高可用场景下为7%,在x86服务器上为2%。磁盘表的开销在Arm/鲲鹏中为20%,在x86中为15%。

    最终,MOT延迟降低了2.5倍,TPC-C事务响应速度提高了2到7倍。

    80.3 MOT 高通量

    MOT高通量测试结果如下。

    80.3.1 Arm/鲲鹏2路128核
    • 性能

      下图是华为Arm/鲲鹏2路128核服务器的TPC-C基准测试结果。

      总共进行了四种类型的测试:

      • MOT 和 openGauss 基于磁盘的表各测试了 2 次。
      • 其中两次测试是在单节点上进行的(没有高可用),也就是说没有对备节点进行复制。剩下的两个测试是在主备节点(高可用)上进行的,即将主节点写入的数据复制到备节点。

      MOT 以橙色显示,基于磁盘的表以蓝色显示。

      图1Arm/鲲鹏2路128核性能基准

      80.3.2 Arm/鲲鹏4路256核

      下面使用单一连接数的tpmC来演示MOT优秀的并发控制性能。

      图3Arm/鲲鹏4路256核性能基准

      结果显示,随着核心数量的增加,性能也显着提升,在768核心下达到了480万tpmC的峰值。

      80.3.3 x86 服务器
      • 8通道384核

      下面通过比较基于磁盘的表和MOT在tpmC中的单连接数,展示了MOT优异的并发控制性能。本次测试以8路384核x86服务器为例。橙色表示 MOT 结果。

      图 4 8 路 384 核 x86 服务器性能基准测试

      结果表明,在386核服务器上,MOT的性能明显优于基于磁盘的表,并且单核性能非常高,达到300万tpmC/核。

      • 4通道96核

      在4路96核服务器上,MOT实现了390万tpmC。下图显示,高效MOT的单核性能达到40,000 tpmC/核。

      图5 4路96核服务器性能基准测试

      80.4 MOT 低延迟

      以下是在Arm/鲲鹏双路服务器(128核)上测试的结果。单位是毫秒 (ms)。

      图 1 低延迟 (90%) 性能基准

      MOT 的平均事务速度为 2.5 倍,MOT 延迟为 10.5 毫秒,基于磁盘的表延迟为 23 至 25 毫秒。

      图 2 低延迟(90%,事务平均值)性能基准

      80.5 MOT 恢复时间目标 (RTO) 和冷启动时间
      80.5.1 高可用 RTO

      MOT 完全集成到 openGauss 中,包括支持主备部署的高可用性场景。 WAL重做日志复制机制会将更改复制到数据库备用节点并使用备用节点进行重放。

      如果发生故障转移事件,无论是由于计划外的主节点故障还是计划内的维护事件,备用节点都会快速变为活动状态。恢复和重播 WAL 重做日志以及启用连接所需的时间也称为恢复时间目标 (RTO)。

      openGauss(包括MOT)由于其并行恢复机制,RTO小于10秒。

      80.5.2 冷启动恢复时间

      冷启动恢复时间是系统从停止模式进入完全运行状态所需的时间。在内存数据库中,这包括将所有数据和索引加载到内存中的时间,因此它取决于数据大小、硬件带宽以及软件算法是否可以有效地处理数据。

      MOT测试采用40GB/s ARM磁盘测试,可以100GB/s加载数据库。 MOT 的索引不是持久性的,因此它们是在冷启动时创建的。实际加载的数据加上索引大小大约多出 50%。因此,可以换算成MOT冷启动时间的数据和索引容量为40秒内150GB,即225GB/分钟(3.75GB/秒)。

      冷启动过程以及将数据从磁盘加载到MOT所需的时间如下图所示。

      图 1冷启动时间性能基准

      • 数据库大小:加载整个数据库的总时间(每个数据库 GB)由蓝线和左侧的 Y 轴**时间(秒)** 表示。
      • 吞吐量:数据库 GB/秒吞吐量由橙色线和右侧的 Y 轴吞吐量 GB/秒 表示。

      80.6 MOT资源利用率

      在 512GB RAM 的 4 路 96 核 x86 服务器上测试的资源利用率如下。 MOT可以高效、持续地消耗几乎所有可用的CPU资源。例如192核390万tpmC的CPU利用率几乎达到100%。

      • tmpC:每分钟完成的 TPC-C 事务数由橙色条和左侧 Y 轴tpmC 表示。
      • CPU 利用率 (%):CPU 利用率由蓝线和右侧 Y 轴 **CPU%** 表示。

      图 1 资源利用率性能基准

      80.7 MOT数据采集速度

      该测试模拟海量物联网、云或移动端接入的实时数据流,快速、持续地将海量数据注入数据库。

      • 本次测试数据采集量较大,如下:
        • 500个线程发送1000万行数据,2000轮,每个插入命令10条记录(行),每条记录占用200字节。
        • 客户端和数据库位于不同的机器上。数据库服务器是2路72核x86服务器。
      • 性能结果
        • 吞吐量:10,000 条记录/核心,或 2MB/核心。
        • 延迟:每10条记录批量插入2.8ms(包括客户端-服务器网络)。

      👍赞,您的认可就是我创作的动力!

      ⭐️收藏,您的青睐就是我努力的方向!

      ✏️评论,您的意见是我进步的财富!