测试方法
本章基于文档数据库服务社区版3.4版本和4.0版本的增强型规格,进行性能测试,具体包括测试环境,测试步骤,以及测试结果。
以下测试过程以集群和副本集实例类型为例。
测试环境
- 区域:华北-北京四
- 可用区:可用区一
- 弹性云服务器(Elastic Cloud Server,简称ECS):规格选择通用计算型s3.2xlarge.2,8U16GB,操作系统镜像使用CentOS 7.5 64位版本。
- 被测试集群实例的配置:每个实例均包含2个shard节点。
- 被测试集群和副本集实例的规格:覆盖集群和副本集实例支持的全部规格类型,详见表1和表2。
表1 集群规格 集群编号
数据库版本
shard节点规格
被测集群1
3.4
1U4GB
被测集群2
3.4
2U4GB
被测集群3
3.4
2U8GB
被测集群4
3.4
4U8GB
被测集群5
3.4
4U16GB
被测集群6
3.4
8U16GB
被测集群7
3.4
8U32GB
被测集群8
3.4
16U64GB
被测集群9
3.4
32U128GB
被测集群10
3.4
60U256GB
被测集群11
4.0
1U4GB
被测集群12
4.0
2U4GB
被测集群13
4.0
2U8GB
被测集群14
4.0
4U8GB
被测集群15
4.0
4U16GB
被测集群16
4.0
8U16GB
被测集群17
4.0
8U32GB
被测集群18
4.0
16U64GB
被测集群19
4.0
32U128GB
被测集群20
4.0
60U256GB
表2 副本集规格 集群编号
数据库版本
节点规格
被测副本集1
3.4
1U4GB
被测副本集2
3.4
2U4GB
被测副本集3
3.4
2U8GB
被测副本集4
3.4
4U8GB
被测副本集5
3.4
4U16GB
被测副本集6
3.4
8U16GB
被测副本集7
3.4
8U32GB
被测副本集8
3.4
16U64GB
被测副本集9
3.4
32U128GB
被测副本集10
3.4
60U256GB
被测副本集11
4.0
1U4GB
被测副本集12
4.0
2U4GB
被测副本集13
4.0
2U8GB
被测副本集14
4.0
4U8GB
被测副本集15
4.0
4U16GB
被测副本集16
4.0
8U16GB
被测副本集17
4.0
8U32GB
被测副本集18
4.0
16U64GB
被测副本集19
4.0
32U128GB
被测副本集20
4.0
60U256GB
测试指标
OPS:Operation Per Second,数据库每秒执行的操作数。
测试步骤
- 配置workload文件。
按照表3所示的业务模型,配置workload中的“readproportion”、“insertproportion”、“updateproportion”的值。
按照表4所示的预置数据量,配置workload中的“recordcount”的值。
- 以业务模型workload_s1为例,执行以下命令,准备数据。
./bin/ycsb load mongodb -s -P workloads/workload_s1 -p mongodb.url=mongodb://${userName}:${password}@${mongosIP}:${port}/ycsb?authSource=admin -threads ${threadNum} 1>workload_s1_load.result 2> workload_s1_load.log
- 以业务模型workload_s1为例,执行以下命令,测试性能。
./bin/ycsb run mongodb -s -P workloads/workload_s1 -p mongodb.url=mongodb://${userName}:${password}@${mongosIP}:${port}/ycsb?authSource=admin -threads ${threadNum} -p maxexecutiontime=1800 1>workload_s1_run.result 2> workload_s1_run.log
- ${mongosIP}为DDS集群实例下mongo节点的内网IP。
- ${password}为DDS实例的管理员密码。
- ${threadNum}为运行测试的并发线程数,本次测试的并发数为128。
测试模型
- workload模型
- 测试并发数 :128
- 文档模型
- 预置数据量
本次性能测试中,针对每种规格的集群,测试了2种预置数据量下的性能。
不同规格集群的预置数据量不同,具体如下表所示。
表4 预置数据量 规格
预置小数据量
预置大数据量
1U4GB
存储容量:10GB
RecordCount:10000000
存储容量:100GB
RecordCount:100000000
2U4GB
存储容量:10GB
RecordCount:10000000
存储容量:100GB
RecordCount:100000000
2U8GB
存储容量:10GB
RecordCount:10000000
存储容量:100GB
RecordCount:100000000
4U8GB
存储容量:10GB
RecordCount:10000000
存储容量:100GB
RecordCount:100000000
4U16GB
存储容量:10GB
RecordCount:10000000
存储容量:100GB
RecordCount:100000000
8U16GB
存储容量:10GB
RecordCount:10000000
存储容量:100GB
RecordCount:100000000
8U32GB
存储容量:10GB
RecordCount:10000000
存储容量:100GB
RecordCount:100000000
16U64GB
存储容量:10GB
RecordCount:10000000
存储容量:100GB
RecordCount:100000000
32U128GB
存储容量:10GB
RecordCount:10000000
存储容量:10GB
RecordCount:10000000
60U256GB
存储容量:10GB
RecordCount:10000000
存储容量:10GB
RecordCount:10000000
