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

BenchmarkSQL 5.0源码修改 -- 支持 人大金仓数据库 KingBase相关推荐

  1. XXL-JOB适配人大金仓数据库kingbase

    一:背景 XXL-JOB版本是2.2.1-SNAPSHOT 二:配置连接池 2.1 首先找到xxl-job-admin目录下的pom.xml文件,把原本mysql-connector-java连接包注 ...

  2. 人大金仓数据库KingBase+SpringBoot+MyBatis的使用

    一.将KingBase提供的jdbc jar包导入到本地maven仓库 mvn install:install-file -Dfile=jar包的位置 -DgroupId=com.kingbase - ...

  3. 人大金仓数据库和达梦数据库性能测试对比

    DM数据库测试 服务器信息:windows操作系统,内存16G 数据库信息:内存默认分配 1批量写入数据性能测试 1.1写入数据格式 id(int),code(String)18-25位數字,name ...

  4. Android6.0 源码修改之 仿IOS添加全屏可拖拽浮窗返回按钮...

    Android6.0 源码修改之 仿IOS添加全屏可拖拽浮窗返回按钮 前言 之前写过屏蔽系统导航栏功能的文章,具体可看Android6.0 源码修改之屏蔽导航栏虚拟按键(Home和RecentAPP) ...

  5. Android6.0 源码修改之Settings音量调节界面增加通话音量调节

    Android6.0 源码修改之Settings音量调节界面增加通话音量调节 前言 今天客户提了个需求,因为我们的设备在正常情况下无法调节通话音量,只有在打电话过程中,按物理音量加减键才能出现调节通话 ...

  6. nacos 适配达梦、人大金仓数据库

    文章目录 一.准备工作 1. 阅读官网文档 2. 下载源码,按官网更详细 3. 下载达梦.人大金仓数据库驱动 二.修改nacos源码 2.1. 引入驱动依赖 2.2. 引用数据库 2.3. 修改配置 ...

  7. nacos适配达梦、人大金仓数据库

    准备工作 1.下载nacos源码.编译,官网更详细 https://nacos.io/zh-cn/docs/quick-start.html 2.下载源码,按官网更详细 git地址:https://g ...

  8. Postgresql适配国产化人大金仓(kingbase)

    背景 为推进国产技术的发展,公司部分项目实行软件国产化 目标 由原来的centos改为UOS,服务器及软件全部替换 适配计划 1.国产化环境搭建 2.原数据库字段长度扩容 3.数据库数据迁移 4.文件 ...

  9. 人大金仓数据库sql语句_人大金仓数据库总结(SQL和JDBC)

    人大金仓作为一款国产数据库,使用的人数和相关资料都比较少. 最近使用人大金仓数据库,做了个简单的SQL和java jdbc的测试,希望能够供大家参考. 1.SQL语句 创建表: CREATE TABL ...

最新文章

  1. Spring 依赖注入(DI)
  2. python中内置函数基本输入输出函数
  3. self-利用self在类封装的方法中输出对象属性
  4. storm hook的使用
  5. jvm(Java virtual machine) JVM架构解释
  6. 随机化算法 —— 数组置乱器的实现
  7. Scala学习(三、函数)
  8. Iperf 网络性能测试
  9. 人脸识别打卡机怎么调sj_人脸识别考勤机怎么代打卡
  10. linux系统下UTF-8转GBK编码,使用汉字字库在LCD显示汉字
  11. CxImage使用介绍
  12. kvm usb键盘 linux,KVM USB打印机共享器81UA连接使用教程
  13. CCF CSP历年题解(python)
  14. 【项目实战】——历史数据归档
  15. python自动语音电话_用 Python 实现自己的智能语音助理(百度语音 + 图灵机器人)...
  16. 父亲有过目不忘的本事
  17. zookeeper leader和learner的数据同步
  18. RISCV学习笔记5.3--ubuntu18.04芯片设计软件(vcs、verdi)的简单使用
  19. iPad 使用技巧:Apple Pencil
  20. 2018四川高考数学(全国卷3)理科21题以泰勒公式为命题背景(同时深挖去年高考题)和它的另类解法的瞎谈...

热门文章

  1. 【C++】深蓝学院课程:C++基础与深度解析 - 课程知识点目录
  2. 大数据揭晓:复联4上映4天破20亿,万达影院2018年140.88亿居榜首
  3. 安徽省2018工程计价电子版_2018版安徽省建设工程计价依据.doc
  4. maven工程配置私库
  5. 计算机游戏用英语怎么读,网络游戏用英语怎么,网络游戏用英语怎么读
  6. Unity3D笔记 英保通二
  7. 【小程序】手动实现switch开关中带文字效果(开关左右文字相同/不同都可以)
  8. MongoDB基础-快速入门
  9. nyoj 1237 最大岛屿【dfs】
  10. 例1-反转一个三位整数