您的位置 首页 java

BenchmarkSQL如何添加新的数据库?

BenchmarkSQL是对OLTP数据库主流测试标准TPC-C的开源实现,在现在的好多测试标准中,均使用它来进行相关的性能测试。它是一个模拟的电商平台实现的流程。现在最新版为5.0,支持的数据库有 Firebird , Oracle PostgreSQL 数据库。现在的社会上,数据库厂商越来越多,随之而来的,产品也越来越多,那么如何才能让它支持更多的数据库呢?下文以SUNDB数据库为例:

准备工作:

下载benchmark sql -5.0的源码包和安装ant编译工具。

1、解压benchmarksql-5.0后,比较重要的目录:

lib:程序所使用的lib库(因为BenchmarkSQL是 Java 语言写的,所以在连接数据库时,使用对应的 jar 包即可)

src:源码目录,主要关注其中的client目录即可(jTPCC.java和jTPCCConfig.java)

run:启动测试的所有脚本目录

2、添加新的数据库支持

  • lib目录下,新建对应的sundb目录,并放入数据库所使用的jar包
  • src/client目录下,jTPCC.java文件中,添加sundb部分如下图所示:

BenchmarkSQL如何添加新的数据库?

jTPCC.java

jTPCCConfig.java文件中添加dbType=”DB_SUNDB”,如下图:

BenchmarkSQL如何添加新的数据库?

jTPCCConfig.java

  • 在run目录下,复制目录sql.common为sql.sundb目录,然后把sql.sundb目录中的所有语句按照sundb的语法做相应调整即可。让其可以在sundb上可以正常完成即可。
  • run目录下,funcs.sh添加sundb相关部分

BenchmarkSQL如何添加新的数据库?

  • 修改完成后,编译新的包。在benchmarksql的根目录执行ant即可。

3、验证是否添加成功

  • 添加对应的配置文件

数据库要建立对应的账户及对应的权限。

按照系统自带的props.ora模板,然后创建一个自己使用的配置文件。

  • 初始化数据

./runDatabaseBuild.sh props.conf

  • 跑benchmarksql

./runBenchmark.sh props.

  • 还原初始环境

./runDatabaseDestroy.sh props.


一些简单的介绍:

1、配置文件:

warehouses=1 //初始化仓数

loadWorkers=4 //初始化仓数所使用的并发数

terminals=1 //跑benchmarkSQL所使用的并发数

完成事务的比例数(相加为100)

newOrderWeight=45 //新订单

paymentWeight=43 //支付

orderStatusWeight=4 //订单状态

deliveryWeight=4 // 运输

stockLevelWeight=4 //库存

2、runDatabaseBuild.sh

BEFORE_LOAD 和 AFTER_LOAD 分别对应部分,为sql.common中的sql名称。

如果有什么不对之处,还请多多指教,欢迎讨论~

文章来源:智云一二三科技

文章标题:BenchmarkSQL如何添加新的数据库?

文章地址:https://www.zhihuclub.com/200686.shtml

关于作者: 智云科技

热门文章

网站地图