更新时间:2026-08-06 GMT+08:00
分享

操作步骤

场景一:如果是全新业务上线,硬件规格评估如下:

  • CPU评估

    计算公式:所需的CPU核心数 ≈ ( QPS * 平均查询耗时(ms) ) / ( 1000ms * CPU利用率目标 )

    考虑因素:

    • 对于OLTP系统,通常需要更多CPU核心(并发处理能力)。
    • 对于OLAP系统,需要更高单核性能(计算能力)。
    • 需预留20%~30%的CPU余量,应对峰值数据变化。
    示例:
    如果业务QPS为20000,平均查询耗时为3ms,CPU利用率目标为50%,那么CPU的核数 ≈ ( 20000 * 3 ) / ( 1000 * 50% ) = 120。
  • 内存评估

    基本原则:热点数据应能放入内存。

    计算公式:缓冲区大小 ≈ 热点数据量 + 连接数 × 每个连接内存消耗

    考虑因素:

    • 对于OLTP系统,缓冲区大小通常需要配置为数据总量的10%~20%。
    • 对于OLAP系统,缓冲区大小通常需要配置为不低于数据总量的20%。
  • 磁盘评估
    • 容量计算

      计算公式:总需求 = 数据量 * ( 1 + 副本数 )

      考虑因素:通常预留30%~40%的额外空间作为未来数据增长和临时数据落盘使用。GaussDB数据库中,当磁盘超过85%占用时,会触发只读机制,因此须保证磁盘空间使用率不要超过85%。

    • 性能考量

      计算公式:IOPS需求 = ( 读QPS * 读比例 ) + ( 写QPS * 写比例 )

      考虑因素:预留20%~30%的余量应,对业务峰值数据变化,延迟敏感型业务选择SSD/NVMe磁盘。

  • 网络评估
    • 带宽需求

      估算每秒数据传输量 = ( 平均查询返回大小 * QPS ) + ( 平均事务数据量 * TPS )

      考虑因素:需要考虑备份、复制等额外流量,预留充足带宽,保证业务正常。

    • 延迟要求

      分布式部署形态对节点间延迟敏感,建议内网延迟<1ms。

场景二:如果已有业务从Oracle数据库迁移至GaussDB数据库,硬件规格评估如下:

对于业务从Oracle数据库迁移到GaussDB数据库的场景,除了依据场景一的方法评估,还可以参照Oracle数据库的硬件规格,按照如下介绍对GaussDB对应的CPU、内存以及磁盘规格进行合理推算。

  • 算力评估

    计算公式:

    Oracle数据库最大峰值CPU使用率 * Oracle数据库服务器的SPECrate值 ≤ ( GaussDB数据库宿主机的SPECrate值 / GaussDB数据库宿主机的CPU的核数 )* GaussDB数据库服务器CPU核数 * 60%

    根据CPU性能评价指标SPECrate值和交易性数据库BenchmarkSQL测试值综合评估算力值,算力如下:

    数据库

    服务器型号

    CPU型号

    Socket数

    核数

    可用算力(SPECrate)

    GaussDB数据库

    -

    Huawei Kunpeng 920

    2路

    96

    200

    Huawei Kunpeng 920

    2路

    128

    250

    Huawei Kunpeng 920

    4路

    256

    325

    Oracle数据库

    华为2288HV5

    Intel Xeon Gold 5120

    2路

    28

    147

    华为rh5885H

    Intel Xeon E7-4850 v3

    4路

    56

    200

    -

    Inte1 (R) Xeon(R) CPUE7-4850 v4

    16路

    256

    851

    根据上述公式和表格中的算力对比,评估GaussDB数据库需要的CPU核数。

  • 并发量评估
    要求业务SQL在Oracle数据库中的CPU_TIME不应超过0.5s,各规格的QPS上限值如下:

    性能容量规格

    性能指标(QPS)

    (参照Oracle数据库复杂SQL类型为标准)

    性能指标(TPS)

    (参考TPCC标准事务模型)

    256C/2048GB

    批量:10.5万

    联机:2.34万

    20000

    128C/1024GB

    批量:8万

    联机:2万

    14000

    96C/768GB

    批量:6万

    联机:1.8万

    12000

    80C/640GB

    批量:5万

    联机:1.5万

    8000

    32C/256GB

    批量:2万

    联机:0.7万

    2600

    16C/128GB

    批量:1万

    联机:0.35万

    1300

    如应用实际并发度QPS大于表中的上限值,需进一步按照Oracle数据库生产实际情况详细评估数据库是否需要拆分。

    根据上述表格并发度QPS对应的性能容量规格,确定对应的CPU核数和内存容量。

  • 磁盘评估
    • Oracle数据库迁移至GaussDB数据库(按照BMS + FC + Dorado部署方式)后存储大小计算公式:

      GaussDB数据库存储容量 ≈ Oracle数据库的数据使用量 * 1.2 + 150GB

    • GaussDB数据库中,存储容量达到85%之后触发数据库只读机制,需考虑各应用两年内数据增长量、以及防止数据库只读需预留空间,GaussDB数据库存储容量评估需按照以下公式评估:

      Oracle数据库的数据使用量 * 1.2 + 150GB ≤ GaussDB数据库存储容量 ≤ 服务器存储上限*75%

    • 1.2为Oracle数据库存储容量迁移到GaussDB数据库的数据膨胀倍数。
    • 150GB为GaussDB数据库本地预留的日志空间大小。

相关文档