Bee Sharding 增加流式查询,分页查询内存优化,降低内存消耗 (V2.0.0.1207)


新增流式查询,分页查询内存优化;Bee Sharding V2.0, 增加分库分表的分片功能;分片就是如此简单,增加一行配置即可;

Bee 经过 10 几个版本的迭代,ORM 的基本功能已趋于成熟稳定;现在增加 Sharding 功能,方便伙伴们提升分库分表的功能。

在 ORM 实现分片功能,更加简单,合理。

新增功能列表:

V2.0.0.1207 (2022・怀念版)

新增流式查询,分页查询内存优化,降低内存消耗

Sharding 分片功能

1) 面向对象分片
2) Suid,SuidRich, 查询,更新分片
3) MoreTable 多表查询分片
4) 批量插入分片
5) MAX,MIN,COUNT,SUM,AVG 分片查询分片
6) 分页 / 排序分片
7) 分片种类支持:分库分表,仅分库,仅分表
8) 分片路由种类支持:一库一表,一库多表,多库多表,全库全表,只指定表,只指定库
9) 通过 Hint 强制指定当次操作的分片路由 (指定 ds 和 table)
10) 分片的广播表
11) Sharding 分片配置支持

 

参考示例

//1. 分片配置

ShardingConfig.addShardingBean(Orders.class,new ShardingBean("ds[0..1].orders[0..5]", "userid"));

//2. 查询

Suid suid=BF.getSuid(); // 获取 select,update,insert,delete 操作对象

Orders orders1=new Orders();

orders1.setUserid(3L); // 分片值

List<Orders> list=suid.select(orders1,condition); // 查询 Orders 实体列表

其中:"ds [0..1].orders [0..5]", "userid"     表示,数据源有:ds0, ds1;  ds0 里有:orders0,orders1,orders2; ds1 里有表:orders3,orders4,orders5; 表的分片键是:userid;  默认是根据表分片键(字段)的值,来路由到相应的表,如 条件 where userid =3, 则  3%6=3, 就会路由到表 orders3。Bee 默认还支持分片值是 String 的类型。

示例中,“//2. 查询” 注释的部分代码,是原来数据库没有分片时,ORM 用来查询的代码。在分片的情况下,只需要添加 “//1. 分片配置” 部分的代码即可;该部分是 Java 风格的配置,也可以使用 properties 风格的方式进行添加配置信息。


Bee 使用分片的相关配置:
#开启 Bee Sharding 分片功能进行分库分表
bee.dosql.multiDS.enable=true
bee.dosql.multiDS.sharding=true
# since v2.0   开启 Sharding 日志
bee.osql.showSQL=true
bee.osql.showShardingSQL=true

 

Bee Sharding 分片功能特点
1) 可以支持已实现 JDBC 规范的所有数据库;
2) 处理流程简单,无需对 sql 字符串进行解析;
3) 代码低侵入设计良好,如 DataSource 无需耦合 Bee 框架的代码;
4) 约定优于配置,使用最好的实现方案作为约定方式,配置简单,用户使用方便;
5) 通过解析实体对象获取分片信息,更准确;
6) 支持四则运算表达式;
7) 配置简单,使用方便;
8) ORM 工具内置支持,无需再使用其它 ORM 中间件;
9) 数据源不与 ORM 代码耦合。

 

相关文档:

分库分表 Sharding: 分库分表介绍 (目录)

分库分表 Sharding: 6. Sharing 最佳实践

https://my.oschina.net/u/6135906/blog/5583202

https://my.oschina.net/u/6135906/blog/5583196

 

Bee 是一个简单,易用,功能强大,开发速度快,编码少的 JAVA ORM 框架。连接,事务都可以由 Bee 框架负责管理. Bee 简化了与 DB 交互的编码工作量,是 编码复杂度 为 O(1) 的 Java 框架!

Bee 简单易用:单表操作、多表关联操作,可以不用写 sql, 极少语句就可以完成 SQL 操作;概念简单 ,10 分钟即可入门。
Bee 功能强大:复杂查询也支持向对象方式,分页查询性能更高,一级缓存即可支持个性化优化;具有分布式特性。从 2.0 开始,增加了 Sharding 分片功能,使用分库分表更方便!

Sharding 功能,还在继续哦,有什么好的主意,赶紧告诉我们!打造一个你认为称心如意的 ORM 工具!

 

码云上的项目首页:

  • https://gitee.com/automvc/bee
  • https://gitee.com/automvc/bee-springboot

github:https://github.com/automvc/bee


相關推薦

2023-02-17

点)像用单节点一样方便,对分库分表透明; ORM Bee Sharding 分库分表就是那么简单,对开发透明,不影响业务,简单易用,文件小,性能好;支持 Mongodb,支持 JDBC,还支持 Android 和 Harmony;可以同时使用多种不同类型

2023-02-03

ORM Bee Sharding分片,无入侵设计,不影响原来业务,简单易用,文件小,性能好;支持 Mongodb,支持 JDBC,还支持 Android 和 Harmony。 Bee,互联网新时代的 Java ORM 工具,更快、更简单、更自动,开发速度快,运行快,更智能

2023-02-07

ORM Bee Sharding 分库分表就是那么简单, 对开发透明,不影响业务,简单易用,文件小,性能好;支持 Mongodb,支持 JDBC,还支持 Android 和 Harmony。 Bee,互联网新时代的 Java ORM 工具,更快、更简单、更自动,开发速度快,

2023-03-01

点) 像用单节点一样方便,对分库分表透明; ORM Bee Sharding 分库分表就是那么简单,对开发透明,不影响业务,简单易用,文件小,性能好;支持 Mongodb,支持 JDBC,还支持 Android 和 Harmony;可以同时使用多种不同类型

2023-02-14

间,去约会^_^ 使用MongoDB像使用MySQL一样容易; ORM Bee Sharding 分库分表就是那么简单,对开发透明,不影响业务,简单易用,文件小,性能好;支持 Mongodb,支持 JDBC,还支持 Android 和 Harmony。 Bee,互联网新时代的 Java OR

2022-09-12

别使用 3)支持Android(安卓)直接使用Bee访问SQLite数据库;Bee增加Android ORM功能. 4)支持HarmonyOS(鸿蒙)直接使用Bee访问SQLite数据库;Bee增加HarmonyOS ORM功能. 在Harmony和Android两个环境,可以用同一套Bee代码访问DB,提高代码重用,节省人力物

2024-10-23

更新内容: 1、增加了Http数据上报和数据查询API接口; 2、增加了调用方管理功能,对外API统一使用调用方进行授权验证,并可以在Web端进行限流管理、查看各接口的调用情况等; 3、修复了limit指标历史版本展示数据丢失的问

2023-09-30

天下大势,分久必合! Hibernate/MyBatis+ plus +Sharding JDBC + Jpa+ Spring data+ GraphQL+ App ORM (Android, 鸿蒙)= Bee Spring Cloud 微服务使用数据库更方便:Bee + Spring Boot; 轻松支持多数据源,Sharding, Mongodb. 要整合一堆的工具,还不如只用一个

2023-05-12

Hibernate/MyBatis+ plus +Sharding JDBC + Jpa+ Spring data+ GraphQL+ App ORM (Android, 鸿蒙)= Bee 要整合一堆的工具,还不如只用一个小巧又功能强大的工具。犹如 JAVA 界的数据源连接池 Hikari, 文件虽小,功能却不赖! ORM Bee Sharding 分库分

2023-09-22

单易用又功能强大,面向对象,自定义sql都支持良好,还支持Sharding分库分表. 一键即可生成能立即运行的后端代码.自动生成 Spring Boot 后端微服务代码,支持Swagger. Hibernate/MyBatis+ plus +Sharding JDBC + Jpa+ Spring data+ GraphQL+ App ORM (Android, 鸿

2023-02-22

点) 像用单节点一样方便,对分库分表透明; ORM Bee Sharding 分库分表就是那么简单,对开发透明,不影响业务,简单易用,文件小,性能好;支持 Mongodb,支持 JDBC,还支持 Android 和 Harmony;可以同时使用多种不同类型

2023-04-23

使用数据库更方便:Bee + Spring Boot; 轻松支持多数据源,Sharding, Mongodb. 更快的开发 Spring Cloud 微服务的新组合,Bee 整合 Spring Boot, 让你瞬间拥有两样快速开发利器! Hibernate/MyBatis+ plus +Sharding JDBC + Jpa+ Spring data+ GraphQL+ App ORM (A

2024-02-23

Hibernate/MyBatis+ plus +Sharding JDBC + Jpa+ Spring data+ GraphQL+ App ORM (Android, 鸿蒙)= Bee 小巧玲珑!仅 860K, 还不到 1M, 但却是功能强大! V2.4.0.2 (2024 元宵节) 1.chaing SQL编程支持占位符预编译,防止注入攻击;增加update,delete的chaing编程支持

2023-09-13

 Mongodb, 也支持 Android, 鸿蒙. Hibernate/MyBatis+ plus +Sharding JDBC + Jpa+ Spring data+ GraphQL+ App ORM (Android, 鸿蒙)= Bee 要整合一堆的工具,还不如只用一个小巧又功能强大的工具。犹如 JAVA 界的数据源连接池 Hikari, 文件虽小,功