DM数据库性能测试实践

一.环境说明

1.1 测试机环境:

说明:

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

1.2 虚拟机环境:

二.测试拓扑

说明:

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 执行工具创建表

[[email protected] run]# ./runSQL.sh props.dm sqlTableCreates

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

[[email protected] run]# ./runLoader.sh props.dm numWarehouses 100

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

[[email protected] 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 执行工具开始执行测试

[[email protected] run]# ./runBenchmark.sh props.dm

3.9 查看结果

[[email protected] run]# cat ./log/benchmarksql.log

原文地址:https://blog.51cto.com/hellosunshine/2475245

时间: 2025-01-09 11:33:03

DM数据库性能测试实践的相关文章

数据库性能测试

12月10日,前阿里数据库团队资深DBA杨奇龙老师,在[DBA+社群]北京群进行了一次主题为"数据库性能测试"的线上分享.小编特别整理出其中精华内容,供大家学习交流.同时,也非常感谢杨奇龙老师对DBA+社群给予的大力支持. 嘉宾简介 杨奇龙 前阿里数据库团队资深DBA 主要负责淘宝业务线,经历多次11.11,有海量业务访问DB架构设计经验. 目前就职于有赞科技DBA,负责数据库运维工作,熟悉MySQL 性能优化,故障诊断,性能压测,对NoSQL感兴趣,希望与大家多多交流,彼此一起成长.

微信 SQLite 数据库修复实践

https://mp.weixin.qq.com/s/N1tuHTyg3xVfbaSd4du-tw 微信 SQLite 数据库修复实践 原创 2017-04-25 guoling WeMobileDev 1.前言 众所周知,微信在后台服务器不保存聊天记录,微信在移动客户端所有的聊天记录都存储在一个 SQLite 数据库中,一旦这个数据库损坏,将会丢失用户多年的聊天记录.而我们监控到现网的损坏率是0.02%,也就是每 1w 个用户就有 2 个会遇到数据库损坏.考虑到微信这么庞大的用户基数,这个损坏

性能09篇-Oracle数据库性能测试

九步轻松搞定Oracle数据库性能测试 1)复制Oracle的JDBC驱动jar包文件(ojdbc14.jar)到JMeter的lib目录下.Ojdbc14.jar文件一般位于Oracle的安装目录下的jdbc\lib目录中. 2)进入bin目录运行jmeter.bat启动JMeter. 3)在测试计划下新增一个线程组.如线程组5个,循环执行10次,即总共会有50次请求. 4)再在线程组下新增一个JDBC连接池配置. 配置如下: Database URL:数据库地址,格式为:jdbc:oracl

数据库性能测试:sysbench用法详解

1.简介和安装 sysbench是一个很不错的数据库性能测试工具. 官方站点:https://github.com/akopytov/sysbench/ rpm包下载:https://packagecloud.io/akopytov/sysbench/packages/el/7/sysbench-1.0.15-1.el7.centos.x86_64.rpm 源码包下载:https://github.com/akopytov/sysbench/archive/1.0.15.tar.gz 如果是编译

kubernetes性能测试实践

本文经作者张文娟授权发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 概述 随着容器技术的发展,容器服务已经成为行业主流,然而想要在生产环境中成功部署和操作容器,关键还是容器编排技术.市场上有各种各样的容器编排工具,如Docker原生的Swarm.Mesos.kubernetes等,其中Google开发的kubernetes因为业界各大巨头的加入和开源社区的全力支撑,成为了容器编排的首选. 简单来讲,kubernetes是容器集群管理系统,为容器化的应用提供资源调度.部署运行.滚动升级

1.DM数据库参数说明

达梦数据库初始化实例后初始化参数无法修改,如果要调整必须重新初始化库,所以为了移植.开发.维护的方便,根据应用特征合理规划初始化参数尤为重要,确定后形成安装规范项目组成员保持一致,如果初始化参数不一致的数据库实例间的物理备份.逻辑备份等将不能互用,切记!下面对一些重要的初始化参数进行详细说明: 初始化参数  对数据库使用的影响 页大小(page size)  字符串字段的最大长度及每行记录的总长度 日志文件大小(rlog)   高并发事务下的刷盘速度 时区(time zone)   时区不同时造

sysbench 数据库性能测试工具的使用

sysbench 数据库性能测试 Mac上安装sysbench测试工具 brew install sysbench 测试sysbench 是否安装成功 //执行这条指令 sysbench cpu --cpu-max-prime=10000 run sysbench 1.0.17 (using bundled LuaJIT 2.1.0-beta2) Running the test with following options: Number of threads: 1 Initializing

达梦数据库索引实践

达梦数据库索引实践 达梦数据库支持二级索引,聚集索引,唯一索引,函数索引,位图索引,分区索引等. 默认的表是索引组织表,利用rowid创建一个默认的索引,所以我们创建的索引,称为二级索引.建索引的目的是加快表的查询,对数据库做DML操作的时候,数据库会自动维护索引.索引是一棵倒置的树,使用索引,就是对这个索引树进行遍历. 建立索引的规则:经常查询的列.连接条件列.谓词经常出现的列(where).查询是返回表的一小部分数据 不适合创建索引的情况:列上有大量的null.列上的数据有限(例如:性别)

数据库性能测试---前阿里数据库团队资深DBA杨奇龙

杨奇龙 前阿里数据库团队资深DBA 主要负责淘宝业务线,经历多次11.11,有海量业务访问DB架构设计经验. 目前就职于有赞科技DBA,负责数据库运维工作,熟悉MySQL 性能优化,故障诊断,性能压测,对NoSQL感兴趣,希望与大家多多交流,彼此一起成长. 内容摘要 压测方法论 为什么要压测 影响因素 统计的指标 常用的压测工具 合理的压测平台 参考 这个是此次分享的大纲,本次分享其实相对比较简单,偏向于“纸上谈兵” 不涉及具体的实践操作,没有介绍工具如何使用 ,更多是介绍我对MySQL 压测的