达梦数据库TPCC测试记录
一、测试概述
TPC-C是专门针对联机交易处理系统(OLTP系统)的规范,一般情况下我们也把这类系统称为业务处理系统。
TPC-C测试的结果主要有两个指标,即流量指标(Throughput,简称tpmC)和性价比(Price/Performance,简称Price/tpmC)。
流量指标(Throughput,简称tpmC):按照TPC组织的定义,流量指标描述了系统在执行支付操作、订单状态查询、发货和库存状态查询这4种交易的同时,每分钟可以处理多少个新订单交易。所有交易的响应时间必须满足TPC-C测试规范的要求,且各种交易数量所占的比例也应该满足TPC-C测试规范的要求。在这种情况下,流量指标值越大说明系统的联机事务处理能力越高。
性价比(Price/Performance,简称Price/tpmc):即测试系统的整体价格与流量指标的比值,在获得相同的tpmC值的情况下,价格越低越好。
实验目标:完成单机版DM8数据库部署,创建TPCC测试环境,完成基础测试。
环境规划:
IP地址: 192.168.50.100
操作系统: CentOS 7.0
数据库: DM8
虚拟机: 1核/4G
软件路径规划
Linux系统目录 |
说明 |
|
1 |
/dm8 |
DM8数据库安装路径 |
/home/tpcc/benchmarksql-5.0rc2-westone-v1.2 |
TPCC目录 |
二、安装DM8数据库
1、图形化界面安装
略.
2、初始化数据库
三、TPCC测试
1、运行tpcc测试SQL脚本
创建测试用户、创建测试表
start bms5_table.sql
start bms5_index.sql
测试用户:BENCHMARKSQL
测试密码:123456789
/* bms5_table.sql脚本 */
CREATE TABLESPACE BENCHMARKSQL1 DATAFILE 'BENCHMARKSQL1.dbf' SIZE 20000;
CREATE USER "BENCHMARKSQL" IDENTIFIED BY "123456789" DEFAULT TABLESPACE "BENCHMARKSQL1";
GRANT DBA TO BENCHMARKSQL;alter tablespace "ROLL" resize datafile 'ROLL.DBF' to 1000;
alter database resize logfile 'DAMENG01.log' to 40000;
alter database resize logfile 'DAMENG02.log' to 40000;create table BENCHMARKSQL.bmsql_config (cfg_name varchar(30) cluster primary key,cfg_value varchar(50)
);
create table BENCHMARKSQL.bmsql_warehouse (w_id integer not null,w_ytd decimal(22,2),w_tax float,w_name varchar(10),w_street_1 varchar(20),w_street_2 varchar(20),w_city varchar(20),w_state char(2),w_zip char(9),cluster primary key(w_id)
)STORAGE(FILLFACTOR 1);
create table BENCHMARKSQL.bmsql_district (d_w_id integer not null,d_id integer not null,d_ytd decimal(22,2),d_tax float,d_next_o_id integer,d_name varchar(10),d_street_1 varchar(20),d_street_2 varchar(20),d_city varchar(20),d_state char(2),d_zip char(9),
cluster primary key(d_w_id, d_id)
)STORAGE(FILLFACTOR 1);
create table BENCHMARKSQL.bmsql_customer (c_w_id integer not null,c_d_id integer not null,c_id integer not null,c_discount float,c_credit char(2),c_last varchar(16),c_first varchar(16),c_credit_lim float,c_balance float,c_ytd_payment float,c_payment_cnt integer,c_delivery_cnt integer,c_street_1 varchar(20),c_street_2 varchar(20),c_city varchar(20),c_state char(2),c_zip char(9),c_phone char(16),c_since timestamp,c_middle char(2),c_data varchar(500),cluster primary key(c_w_id, c_d_id, c_id)
);
create table BENCHMARKSQL.bmsql_history (hist_id integer,h_c_id integer,h_c_d_id integer,h_c_w_id integer,h_d_id integer,h_w_id integer,h_date timestamp,h_amount float,h_data varchar(24)
)storage(branch(32,32),without counter);
create table BENCHMARKSQL.bmsql_oorder (o_w_id integer not null,o_d_id integer not null,o_id integer not null,o_c_id integer,o_carrier_id integer,o_ol_cnt float,o_all_local float,o_entry_d timestamp,cluster primary key(o_w_id, o_d_id, o_id)
)storage(without counter);create table BENCHMARKSQL.bmsql_new_order (no_w_id integer not null,no_d_id integer not null,no_o_id integer not null,cluster primary key(no_w_id, no_d_id, no_o_id)
)storage(without counter);
create table BENCHMARKSQL.bmsql_order_line (ol_w_id integer not null,ol_d_id integer not null,ol_o_id integer not null,ol_number integer not null,ol_i_id integer not null,ol_delivery_d timestamp,ol_amount float,ol_supply_w_id integer,ol_quantity float,ol_dist_info char(24),cluster primary key(ol_w_id, ol_d_id, ol_o_id, ol_number)
)storage(without counter);
create table BENCHMARKSQL.bmsql_stock (s_w_id integer not null,s_i_id integer not null,s_quantity float,s_ytd float,s_order_cnt integer,s_remote_cnt integer,s_data varchar(50),s_dist_01 char(24),s_dist_02 char(24),s_dist_03 char(24),s_dist_04 char(24),s_dist_05 char(24),s_dist_06 char(24),s_dist_07 char(24),s_dist_08 char(24),s_dist_09 char(24),s_dist_10 char(24),
cluster primary key(s_w_id, s_i_id)
);
create table BENCHMARKSQL.bmsql_item (i_id integer not null,i_name varchar(24),i_price float,i_data varchar(50),i_im_id integer,cluster primary key(i_id)
);
/* bms5_index.sql 脚本 */
create index ndx_customer_name on BENCHMARKSQL.BMSQL_customer (c_w_id, c_d_id, c_last, c_first);
create or replace procedure BENCHMARKSQL.createsequence
asn int;stmt1 varchar(200);begin select count(*)+1 into n from BMSQL_history;if(n != 1) thenselect max(hist_id) + 1 into n from BMSQL_history;end if;PRINT n;stmt1:='create sequence hist_id_seq start with '||n||' MAXVALUE 9223372036854775807 CACHE 50000;';EXECUTE IMMEDIATE stmt1;
end;
/
call BENCHMARKSQL.createsequence;
alter table BENCHMARKSQL.BMSQL_history modify hist_id integer default (BENCHMARKSQL.hist_id_seq.nextval);
2、修改确认props.dm配置文件
在./run目录下配置props.dm
3、执行数据装载工具装载数据
./runLoader.sh props.dm numWarehouses 10
4、执行测试工具
./runBenchmark.sh props.dm
或后台执行:nohup ./runBenchmark.sh props.dm > /dev/null 2>&1 &
5、测试结果:
测试完成后的结果会保存在run文件夹下的“my_result_时间”文件夹中。
6、测试结束后清理
进入run目录,在终端下执行
./runSQL.sh props.dm indexDrops
./runSQL.sh props.dm tableTruncates
./runSQL.sh props.dm tableDrops
更多技术内容请访问社区:https://eco.dameng.com
达梦数据库TPCC测试记录相关推荐
- 达梦数据库tpcc测试
达梦数据库tpcc测试 随着达梦数据库越来越流行,数据库性能测试成为日常DBA或运维人员必备技能知识,常见的性能测试工具有jemeter.loadrunner.tpcc.tpc-h等软件.常见的测试软 ...
- 达梦数据库安装配置记录
目录 1 确定软硬件环境 1.1 硬件环境需求 1.2 软件环境需求 1.3 本次部署的软硬件情况 2 软硬件准备 2.1 软件版本 2.2 软件获取 3 安装操作系统 4 软件包上传 4.1 服务器 ...
- jmeter连接达梦数据库进行测试
文章目录 前言 一.准备 1 软件下载 2 解压 3 配置Windows环境变量 二.使用 1.启动jmeter 2.jmeter使用 2.1添加JDBC Connection Configurati ...
- DM8达梦数据库tpch测试步骤
此篇文档只介绍了如何在DM8上使用测试工具进行tpch测试的步骤,关于参数性能优化方面的内容不做介绍. 更多达梦数据库相关问题,请浏览云适配技术社区.达梦云适配技术社区 https://eco.dam ...
- 达梦数据库基础学习记录及DCA考试注意点
达梦数据库介绍 面对国外数据库厂商垄断中国市场的局面, 达梦怀揣着自主研发中国数据库的梦想, 致力开发具有自主版权的数据库软件.从第一代数据库产品DM1到第七代DM7, 在长达十余年的市场推广中, 达 ...
- 达梦数据库使用小记录【关于 无效的列】
[DM版本]:DmJdbcDriver18[8.1.2.192] [操作系统]:centos7 [项目结构]*:项目是spring boot[2.7.10]+mybatis[mybatis-plus ...
- 达梦数据库学习记录-包含安装、创建、体系结构、表空间用户模式对象管理备份与还原等
达梦数据库DCA学习记录 目录 达梦数据库以及认证体系简单介绍 安装DM8数据库及常见问题解决办法 创建数据库.数据库实例及相关知识点介绍 数据库连接 数据库启动与关闭 DM8线程 DM8逻辑存储结构 ...
- 达梦数据库的TPCC测试记录
达梦数据库的TPCC测试记录 测试环境 本文主要目的是介绍使用 benchmarksql工具进行 TPCC 测试的步骤 使用工具版本:benchmarksql-4.1.1 服务器:华为泰山v1 CPU ...
- 【达梦数据库】数据库测试
文章目录 前言 1 数据库测试 1.1 测试流程 1.2 测试内容 1.3 测试标准 2 TPC-C基准测试 2.1 概念介绍 2.2 模型介绍 2.3 测试流程 2.4 工具介绍 2.5 操作步骤 ...
最新文章
- iOS15.4 来袭:新增“男妈妈”表情及口罩面容解锁、AirTags 反跟踪等新功能
- 学习select(函数)
- 为什么手机升级系统反应慢了_手机卡顿反应慢怎么解决?久用不卡顿的手机盘点...
- python退出帮助系统_Python基础(09):帮助
- JavaScript学习——JavaScript 循环
- 移动端适配的基础知识
- dubbo的基于java的路由_1 | Dubbo:探讨标签路由的实现
- STM32——直流电机控制与TB6612FNG驱动芯片
- 程序人生 -- 我的成长之路和进阶经验分享
- python牛顿环测量曲率半径
- restrain java_Feign 在远端接口超时的时候,抑制异常的抛出
- 产品包装设计在品牌和营销中的重要性
- 微信文件传输助手网页版
- CSDN周刊:Google Cloud大规模宕机;中国正式进入 5G 商用元年!苹果发布SwiftUI
- JS中call用法理解
- 鱼眼相机的成像模型与畸变校正
- 欧盟电源适配器外部电源2019/1782/EU ERP欧洲能效认证
- Python输入长宽,求长方形的周长和面积
- 天宝Trimble Data Transfer安装并传输数据
- 苹果系统又更新了,iOS13.1.3修复了哪些Bug?为啥对系统频繁修复