DM数据库性能测试实践

一.环境说明

1.1 测试机环境:
DM数据库性能测试实践

说明:

测试机环境为一般主机即可,要求不高

1.2 虚拟机环境:
DM数据库性能测试实践

二.测试拓扑
DM数据库性能测试实践

说明:

1.性能测试为不同主机测试即:测试机与被测系统不再一个机器上面

2.测试机为一般主机即可

3.测试机与物理机之间的网络最低为千兆网络

注:当前是华为鲲鹏服务器。同样适用于长城服务器

三.测试步骤

3.1 创建测试用户与表

在数据库中输入:

create tablespace "TPCC" datafile 'TPCC.dbf' size 10000 autoextend on;
create user benchmarksql identified by 123456789 default tablespace "TPCC";
grant dba to benchmarksql;

3.2 执行工具创建表

[root@benchmarksql run]# ./runSQL.sh props.dm sqlTableCreates

3.3 执行工具加载测试数据,注意xxx要与配置文件中的warehouses的值保持

[root@benchmarksql run]# ./runLoader.sh props.dm numWarehouses 100

3.4 执行工具创建数据库索引

[root@benchmarksql run]# ./runSQL.sh props.dm sqlIndexCreates

3.5 扩库和日志

alter tablespace "ROLL" resize datafile 'ROLL.DBF' to 5000;
alter database resize logfile 'DAMENG01.log' to 20000;
alter database resize logfile 'DAMENG02.log' to 20000;
SP_SET_TAB_FAST_POOL_FLAG('BENCHMARKSQL', 'ITEM', 1);
SP_SET_TAB_FAST_POOL_FLAG('BENCHMARKSQL', 'WAREHOUSE', 1);
SP_SET_TAB_FAST_POOL_FLAG('BENCHMARKSQL', 'DISTRICT', 1);

3.6 设置参数,要重启数据库服务

MAX_OS_MEMORY = 100
MEMORY_POOL = 1000
BUFFER = 100000
BUFFER_POOLS = 101
FAST_POOL_PAGES = 90000
FAST_ROLL_PAGES = 80000
RECYCLE = 8
MULTI_PAGE_GET_NUM = 64MAX_BUFFER = 100000
VM_MEM_HEAP = 0
WORKER_THREADS = 24
WORK_THRD_STACK_SIZE = 512
CKPT_RLOG_SIZE = 0
CKPT_INTERVAL = 3600
CKPT_DIRTY_PAGES = 0
FORCE_FLUSH_PAGES = 0
IO_THR_GROUPS =12
CHECK_DB_IS_ACTIVE = 0
BDTA_SIZE = 20
ENABLE_SPACELIMIT_CHECK = 0
RLOG_PARALLEL_ENABLE = 1
RLOG_RESERVE_SIZE = 0
SESS_CHECK_INTERVAL = 30
FAST_RELEASE_SLOCK = 0
NOWAIT_WHEN_UNIQUE_CONFLICT = 1
UNDO_EXTENT_NUM = 32
UNDO_RETENTION = 1
MAX_SESSIONS = 1000
SUBQ_EXP_CVT_FLAG = 0
PURGE_DEL_OPT = 1
ENABLE_FREQROOTS = 2
CACHE_POOL_SIZE = 100
DICT_BUF_SIZE = 20
ENABLE_MONITOR = 0

3.7 将数据加载到内存

select count() from "BENCHMARKSQL"."CUSTOMER" union all
select count(
) from "BENCHMARKSQL"."DISTRICT" union all
select count() from "BENCHMARKSQL"."ITEM" union all
select count(
) from "BENCHMARKSQL"."NEW_ORDER" union all
select count() from "BENCHMARKSQL"."OORDER" union all
select count(
) from "BENCHMARKSQL"."ORDER_LINE" union all
select count() from "BENCHMARKSQL"."STOCK" union all
select count(
) from "BENCHMARKSQL"."WAREHOUSE" union all
select count(*) from "BENCHMARKSQL"."HISTORY" union all
select count("C_PAYMENT_CNT") from "BENCHMARKSQL"."CUSTOMER";

3.8 执行工具开始执行测试

[root@benchmarksql run]# ./runBenchmark.sh props.dm

3.9 查看结果

[root@benchmarksql run]# cat ./log/benchmarksql.log
DM数据库性能测试实践

猜你喜欢

转载自blog.51cto.com/hellosunshine/2475245