文档首页> > 性能白皮书> DDS社区版> 测试方法

测试方法

分享
更新时间: 2019/06/21 11:34

本章基于文档数据库服务社区版3.4版本,进行性能测试,具体包括测试环境,测试步骤,以及测试结果。

以下测试过程以集群实例类型为例。

测试环境

  • 区域:华北-北京一
  • 可用区:可用区1
  • 弹性云服务器(Elastic Cloud Server,简称ECS):规格选择通用计算型s3.2xlarge.2,8U16GB,操作系统镜像使用CentOS 7.5 64位版本。
  • 被测试集群实例的配置:每个实例均包含2个shard节点。
  • 被测试集群实例的规格:覆盖集群实例支持的全部规格类型,详见表1
    表1 集群规格

    集群编号

    shard节点规格

    被测集群1

    1U4GB

    被测集群2

    2U4GB

    被测集群3

    2U8GB

    被测集群4

    4U8GB

    被测集群5

    4U16GB

    被测集群6

    8U16GB

    被测集群7

    8U32GB

    被测集群8

    16U64GB

测试工具

本次测试采用开源社区的YCSB 0.12.0版本的测试工具。

YCSB是一款广泛使用的数据库性能测试工具,具体使用方法请参见YCSB

测试指标

OPS:Operator per Second,数据库每秒执行的操作数。

测试步骤

  1. 配置workload文件。

    按照表2所示的业务模型,配置workload中的“readproportion”、“insertproportion”、“updateproportion”的值。

    按照表3所示的预置数据量,配置workload中的“recordcount”的值。

  2. 以业务模型workload_s1为例,执行以下命令,准备数据。

    ./bin/ycsb load mongodb -s -P workloads/workload_s1 -p mongodb.url=mongodb://${mongosIP}:${port}/ycsb -threads ${threadNum} 1>workload_s1_load.result 2> workload_s1_load.log

  3. 以业务模型workload_s1为例,执行以下命令,测试性能。

    ./bin/ycsb run mongodb -s -P workloads/workload_s1 -p mongodb.url=mongodb://${mongosIP}:${port}/ycsb -threads ${threadNum} -p maxexecutiontime=1800 1>workload_s1_run.result 2> workload_s1_run.log

测试模型

  • workload模型
    表2 业务模型

    业务模型编号

    业务模型

    S1

    100% insert

    S2

    90% update ,10% read

    S3

    65% read ,25% insert, 10% update

    S4

    90% read ,5% insert, 5% update

    S5

    50% update, 50% read

    S6

    100% read

  • 测试并发数 :128
  • 文档模型

    使用YCSB默认配置,每个文档大小1KB,默认“_id”索引。

  • 预置数据量

    本次性能测试中,针对每种规格的集群,测试了2种预置数据量下的性能。

    不同规格集群的预置数据量不同,具体如下表所示:

    表3 预置数据量

    集群编号

    shard节点规格

    预置小数据量

    预置大数据量

    被测集群1

    1U4GB

    存储容量:10GB

    RecordCount:10000000

    存储容量:100GB

    RecordCount:100000000

    被测集群2

    2U4GB

    存储容量:10GB

    RecordCount:10000000

    存储容量:100GB

    RecordCount:100000000

    被测集群3

    2U8GB

    存储容量:10GB

    RecordCount:10000000

    存储容量:100GB

    RecordCount:100000000

    被测集群4

    4U8GB

    存储容量:10GB

    RecordCount:10000000

    存储容量:100GB

    RecordCount:100000000

    被测集群5

    4U16GB

    存储容量:10GB

    RecordCount:10000000

    存储容量:100GB

    RecordCount:100000000

    被测集群6

    8U16GB

    存储容量:10GB

    RecordCount:10000000

    存储容量:100GB

    RecordCount:100000000

    被测集群7

    8U32GB

    存储容量:10GB

    RecordCount:10000000

    存储容量:100GB

    RecordCount:100000000

    被测集群8

    16U64GB

    存储容量:10GB

    RecordCount:10000000

    存储容量:100GB

    RecordCount:100000000

  • 数据一致性模型

    本次性能测试覆盖如下2种数据一致性模型:

    • 弱一致性:Write Concern为{w : 1, j : false},数据写入单个节点磁盘,将返回结果。后台异步持久化下盘,为默认的Write Concern设置。
    • 强一致性:Write Concern为{w : 3, j : true},数据写入三个节点磁盘,才会返回结果。
如果您喜欢这篇文档,您还可以:

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区