- 调整SqlIdFactory实现,使用类全路径名作为sqlId标识
- 调整BeetlSQL+SpringBoot集成方式,支持SpringBoot3
- 新增MyBatis-Flex,EasyQuery 俩款ORM工具性能测试
maven
<dependency> <groupId>com.ibeetl</groupId> <artifactId>beetlsql</artifactId> <version>3.23.7-RELEASE</version> </dependency>
BeetlSQL 自主研发自 2015 年,目标是提供开发高效,维护高效,运行高效的数据访问框架,它适用范围广,定制性强,写起数据库访问代码特别顺滑,不亚于 MyBatis。你不想写 SQL 也好,或者想更好地写 SQL 也好,BeetlSQL 都能满足这要求,目前支持的数据库如下
- 传统数据库:MySQL (包括支持 MySQL 协议的各种数据库), MariaDB ,Oralce ,Postgres (包括支持 Postgres 协议的各种数据库), DB2 , SQL Server ,H2 , SQLite , Derby ,神通,达梦,华为高斯,人大金仓,PolarDB,GBase8s,GreatSQL 等
- 大数据:HBase,ClickHouse,Cassandar,Hive,GreenPlum
- 物联网时序数据库:Machbase,TD-Engine,IotDB
- SQL 查询引擎:Drill,Presto,Druid
- 内存数据库:ignite,CouchBase
如下测试Score越大性能越好,包含了常用的 orm 操作: 多表联合查询映射(complexMapping),直接执行 sql (executeJdbc), 执行模板 sql (executeTemplate), 执行文件中的模板 sql ( File), 内置插入(insert),Query 调用链,翻页查询 (pageQuery), 内置主键查询 (selectById), one2Many 自动关联查询
Benchmark Mode Cnt Score Error Units JMHMain.beetlsqlComplexMapping thrpt 3 224.234 ± 551.444 ops/ms JMHMain.beetlsqlExecuteJdbc thrpt 3 504.526 ± 208.228 ops/ms JMHMain.beetlsqlExecuteTemplate thrpt 3 434.031 ± 110.087 ops/ms JMHMain.beetlsqlFile thrpt 3 428.368 ± 235.069 ops/ms JMHMain.beetlsqlGetAll thrpt 3 3.023 ± 3.741 ops/ms JMHMain.beetlsqlLambdaQuery thrpt 3 259.796 ± 37.421 ops/ms JMHMain.beetlsqlOne2Many thrpt 3 120.713 ± 68.157 ops/ms JMHMain.beetlsqlPageQuery thrpt 3 202.702 ± 92.875 ops/ms JMHMain.beetlsqlSelectById thrpt 3 423.833 ± 204.166 ops/ms JMHMain.easyQueryComplexMapping thrpt 3 60.562 ± 238.406 ops/ms JMHMain.easyQueryExecuteJdbc thrpt 3 656.139 ± 162.165 ops/ms JMHMain.easyQueryGetAll thrpt 3 9.028 ± 3.977 ops/ms JMHMain.easyQueryLambdaQuery thrpt 3 326.350 ± 280.253 ops/ms JMHMain.easyQueryPageQuery thrpt 3 132.464 ± 91.686 ops/ms JMHMain.easyQuerySelectById thrpt 3 292.797 ± 324.954 ops/ms JMHMain.flexGetAll thrpt 3 0.910 ± 0.503 ops/ms JMHMain.flexPageQuery thrpt 3 65.606 ± 402.289 ops/ms JMHMain.flexSelectById thrpt 3 218.314 ± 152.861 ops/ms JMHMain.jdbcExecuteJdbc thrpt 3 1081.216 ± 225.041 ops/ms JMHMain.jdbcGetAll thrpt 3 13.381 ± 2.713 ops/ms JMHMain.jdbcSelectById thrpt 3 1077.471 ± 197.462 ops/ms JMHMain.jpaExecuteJdbc thrpt 3 104.056 ± 301.241 ops/ms JMHMain.jpaExecuteTemplate thrpt 3 130.304 ± 168.880 ops/ms JMHMain.jpaGetAll thrpt 3 0.552 ± 0.260 ops/ms JMHMain.jpaInsert thrpt 3 63.933 ± 359.824 ops/ms JMHMain.jpaOne2Many thrpt 3 99.006 ± 87.633 ops/ms JMHMain.jpaPageQuery thrpt 3 116.191 ± 191.231 ops/ms JMHMain.jpaSelectById thrpt 3 319.718 ± 129.206 ops/ms JMHMain.mybatisComplexMapping thrpt 3 106.319 ± 28.726 ops/ms JMHMain.mybatisExecuteTemplate thrpt 3 222.515 ± 252.383 ops/ms JMHMain.mybatisFile thrpt 3 171.852 ± 188.859 ops/ms JMHMain.mybatisGetAll thrpt 3 1.183 ± 0.142 ops/ms JMHMain.mybatisLambdaQuery thrpt 3 10.197 ± 17.721 ops/ms JMHMain.mybatisPageQuery thrpt 3 66.245 ± 53.023 ops/ms JMHMain.mybatisSelectById thrpt 3 205.925 ± 481.288 ops/ms JMHMain.woodExecuteJdbc thrpt 3 378.089 ± 124.102 ops/ms JMHMain.woodExecuteTemplate thrpt 3 408.150 ± 172.513 ops/ms JMHMain.woodFile thrpt 3 426.547 ± 182.839 ops/ms JMHMain.woodGetAll thrpt 3 1.100 ± 0.729 ops/ms JMHMain.woodLambdaQuery thrpt 3 402.107 ± 159.309 ops/ms JMHMain.woodPageQuery thrpt 3 247.074 ± 132.585 ops/ms JMHMain.woodSelectById thrpt 3 395.659 ± 39.505 ops/ms
阅读文档 源码和例子 在线体验 多库使用 性能测试
还没有评论,来说两句吧...