BenchmarkSQL 5.0源码修改–支持人大金仓数据库 KingBase

benchmarksql 在5.0版本中没有对人大金仓数据库(KingBase)的TPC-C测试支持,本文通过修改部分源码,让benchmarksql 5.0支持KingBase。

个人理解: BenchmarkSQL 是通过jdbc方式连接数据库,通过DML操作来对数据进行性能测试。

所以,对于不同类型的数据,BenchmarkSQL只要获取到对应的驱动,及正确的URL格式,账号密码等,就能与不同类型数据库进行连接,

再对数据库进行DML操作来对数据库进行性能测试。一般常用的数据库的DML语句都是差不多的。

所以,要BenchmarkSQL不同类型数据库,基本上只要增加该数据库的驱动,连接数据库的配置文件,及源码里对数据库类型做个判断就差不多了。

以下是 简单几步实现BenchmarkSQL对人大金仓数据库性能测试

环境:

centos 7.5

benchmarksql 5.0

kingbase 8

jdk 1.8

1. 源码下载,解压

https://download.csdn.net/download/ffb920724/14141743  已支持MySQL

下载BenchmarkSQL5.0版本,目录结构如下

2. 修改源码

    2.1  修改 src/client/jTPCC.java,增加kingbase相关部分,如下所示,(保持和MySQL一致)

   2.2 (无需改动,已存在default情况)修改src/client/jTPCCConnection.java, SQL子查询增加”AS L”别名,如下所示:

可见,除了jTPCCConfig.DB_POSTGRES这种情况特殊,其他数据库类型(dbType) 统一默认走default;

2.3(这步不需要改动)具体看看jTPCCConfig都有哪些数据库类型,包括 oracle,postgres,其他数据库默认使用DB_UNKNOWN ,包括MySQL,人大金仓等,和2.1中数据库类型赋值对应;

2.4  在lib包下,创建人大金仓目录并添加人大金仓数据库驱动,如下:

注意 要把log4j也加进去,如图所示架包。不然无法打印日志会报错。

2.5 配置人大金仓架包路径  修改/data/BenchmarkSQL/run/funcs.sh文件,添加人大金仓数据库驱动路径

保持和mysql一样格式,注意后面没有 ;;

2.6 添加人大金仓数据库类型  修改/data/BenchmarkSQL/run/funcs.sh文件,

OK,源码修改完成。

3. ant 编译         –》 在 BenchmarkSQL解压目录下(/data/BenchmarkSQL)编译

编译成功!

PS: 如果

没有ant 命令 ,yum install ant  在线安装即可。

4.  在 run 目录下,新增人大金仓配置文件

主要变动内容如下:
db=kingbase
driver=com.kingbase8.Driver
conn=jdbc:kingbase8://localhost:54321/xxx
user=xxx
password=xxx

。。。。

完成BenchmarkSQL对人大金仓数据库性能测试的支持!

后面就和测试mysql已支持的数据库一样操作即可。

BenchmarkSQL对mysql进行性能测试 https://blog.csdn.net/ffb920724/article/details/112478578

 

参考: https://www.jianshu.com/p/622545cb1341

 

本文地址:https://blog.csdn.net/ffb920724/article/details/112567934

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐