测试方法-凯发k8国际娱乐官网入口
本章基于geminidb cassandra,进行性能测试,具体包括测试环境,测试步骤,以及测试结果。
测试环境
- 区域:华北-北京四
- 可用区:可用区1 可用区2 可用区3(跨3个可用区部署)
- 弹性云服务器(elastic cloud server,简称ecs):规格选择h3.4xlarge.2,16u32gb,操作系统镜像使用centos 7.5 64位版本。
- 被测试实例的配置:每个实例均包含3个节点。
- 被测试实例的规格:覆盖以下规格类型,详见表1 实例规格。
表1 实例规格 编号
规格
cluster1
4u16gb
cluster2
8u32gb
cluster3
16u64gb
cluster4
32u128gb
测试工具
本次测试采用开源社区的ycsb 0.15.0版本的测试工具,ycsb连接geminidb cassandra集群负载均衡策略需使用roundrobinpolicy。
ycsb是一款广泛使用的数据库性能测试工具,具体使用方法请参见。
测试指标
ops:operation per second,数据库每秒执行的操作数。
测试步骤
- 配置workload文件。
按照表2 测试模型所示的业务模型,配置workload中的“readproportion”、“insertproportion”、“updateproportion”、“scanproportion”、“readmodifywriteproportion”的值。
按照表3 预置数据量所示的预置数据量,配置workload中的“recordcount”的值。
- 以测试模型workload-insert-mostly为例,执行以下命令,准备数据。
sh bin/ycsb.sh load cassandra-cql -p workloads/workload-insert-mostly -p "hosts=${contactpoints}" -p "port=${port}" -p "cassandra.username=${username}" -p "cassandra.password=${password}" -p operationcount=400000000 -p recordcount=400000000 -p exportfile=./data_load.exp -threads ${threadnum} -s > data_load.log 2>&1 &
- 以测试模型workload-insert-mostly为例,执行以下命令,测试性能。
sh bin/ycsb.sh run cassandra-cql -p workloads/workload-insert-mostly -p "hosts=${contactpoints}" -p "port=${port}" -p "cassandra.username=${username}" -p "cassandra.password=${password}" -p operationcount=9000000 -p recordcount=9000000 -p maxexecutiontime=3600 -p exportfile=./workload-insert-mostly.exp -threads ${threadnum} -s > workload-insert-mostly_run.log 2>&1 &
测试模型
- workload模型
表2 测试模型 测试模型编号
测试模型
workload-read-mostly
95% read, 5% update
workload-read-write-combination
50% update, 50% read
workload-read-modify-write
50% read, 50% readmodifywrite
workload-mixed-operational-analytical
65% read, 25% update, 10% insert
workload-insert-mostly
90% insert, 10% read
- 数据模型
fieldlength=100, fieldcount=10
- 预置数据量
本次性能测试中,针对每种规格的实例,测试了如下预置数据量的性能。
预置数据具体如下表所示:
表3 预置数据量 编号
规格
预置数据量
cluster1
4u16gb
50gb
cluster2
8u32gb
100gb
cluster3
16u64gb
200gb
cluster4
32u128gb
400gb
意见反馈
文档内容是否对您有帮助?
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨