TcaplusDB Benchmark工具(Java)使用说明
1. 使用场景
TcaplusDB Java Benchmark工具主要用于对TcaplusDB进行压力测试。
TcaplusDB Java Benchmark工具支持基于固定数据集(CSV文件)的压力测试,也支持基于规则动态生成随机数据的压力测试。
TcaplusDB Java Benchmark工具支持单种请求压力测试和多种请求混合压力测试,多个请求混合测试时,可以配置各种请求的比例。当前工具支持的请求类型有:
- TCAPLUS_CMD_GET_REQ
- TCAPLUS_CMD_BATCH_GET_REQ
- TCAPLUS_CMD_INSERT_REQ
- TCAPLUS_CMD_DELETE_REQ
- TCAPLUS_CMD_UPDATE_REQ
- TCAPLUS_CMD_REPLACE_REQ
- TCAPLUS_CMD_GET_BY_PARTKEY_REQ
- TCAPLUS_CMD_INCREASE_REQ
- TCAPLUS_CMD_LIST_GETALL_REQ
- TCAPLUS_CMD_LIST_GET_REQ
- TCAPLUS_CMD_LIST_ADDAFTER_REQ
- TCAPLUS_CMD_LIST_REPLACE_REQ
- TCAPLUS_CMD_LIST_DELETE_REQ
- TCAPLUS_CMD_LIST_DELETE_BATCH_REQ
- TCAPLUS_CMD_LIST_DELETEALL_REQ
- TCAPLUS_CMD_DELETE_BY_PARTKEY_REQ
- TCAPLUS_CMD_TABLE_TRAVERSE_REQ
- TCAPLUS_CMD_LIST_TABLE_TRAVERSE_REQ
2. 使用限制
TcaplusDB Java Benchmark工具依赖TcaplusDB Java SDK进行数据读写,由于当前TcaplusDB Java SDK只支持访问TDR表,所以当前TcaplusDB Java Benchmark只能基于TDR表进行性能相关测试。
3. 使用方法
3.1. 准备工作
安装JDK,安装方法可参见各JDK厂商的官方指导,如 OpenJDK的安装指导 。
下载Benchmark工具,参见Benchmark工具下载。
3.2. 基本测试方法(以Linux环境为例)
创建测试目录(本文以/data/目录为例)。
将Benchmark工具发布包中的tcaplus-benchmark目录复制到/data/目录下。
在TcaplusDB OMS页面上添加测试表,表定义参见/data/tcaplus-benchmark/example/test-table-for-benchmark.xml。
修改/data/tcaplus-benchmark/example/test-workload-for-benchmark.yml文件内容,主要修改点有:
4.1. 修改database相关配置,设置dir_servers,app_id,app_password和zone_id 。
4.2. 修改每个records参数值,将文件路径修改为:/data/tcaplus-benchmark/example/test-data-for-benchmark.yml。
- 开始测试,执行命令:
java -cp /data/tcaplus-benchmark/lib/service-api-autotest-tool-3.40.0SP04.jar:/data/tcaplus-benchmark/conf/ com.tencent.tcaplus.autotest.tool.BenchMark -w /data/tcaplus-benchmark/example/test-workload-for-benchmark.yml
3.3. 自定义测试方法
用户除了可以根据TcaplusDB Java Benchmark工具发布包中提供样例表和测试任务配置文件进行基本的性能测试外,也可以编辑自己的测试任务配置文件,进行自定义的测试。测试任务配置文件设置方法参考发布包中的test-workload-for-benchmark.yml文件。