guzz1.2.7 b2发布,支持表分切
程序员文章站
2022-05-13 13:34:30
...
guzz是一套用来解决ORM、多数据源管理、以及通用数据计算的数据层框架,为系统在数据层的设计提供一站式解决方案。guzz可以看作是 ibatis/hibernate的一大的延伸,并可以取代这2个东西。
guzz特点:
- 现代大规模系统设计,技术上吸收了ibatis/hibernate的优点
- 支持像hibernate一样的对象持久、映射和方便的增删改查
- 支持像ibatis一样,让dba参与sql设计的复杂数据库操作和优化
- 支持应用使用大量的数据库和主从读写分离
- 支持关联、非结构化等异构数据统一管理
- 支持多个表在多组数据库间水平分布(Shard)以及单个大表分成无数小表(shadow
- 支持组件化服务(SOA),构建企业/项目实施基础平台
- 支持页面展示层的快速变更、开发及部署
- 支持配置管理服务器,对所有应用程序的配置进行统一管理
1.2.7 beta2更新介绍:
- 支持表分切。允许同一对象按照业务规则,分别存储在不同的表中。如新闻评论:新闻频道的评论存放在 tb_c1,娱乐:tb_c2,体育tb_c3,其他:tb_c4,满足同类在线数据的数据表平行扩展需要。表分切命名为:Shadow Table。
- 支持异步调用。用于个远程服务同步的调用,降低等待时间。
表分切在使用时,由应用自定义分切规则。应用实现org.guzz.orm.ShadowTableView接口,并将实现类配置到hbml.xml(hibernate方式)或者guzz.xml orm(ibatis方式)映射中完成。
篇幅较长,完整的介绍请参看:http://www.guzz.org/wiki/GuzzShadow
异步调用示例说明:
异步调用是对“服务”组件的扩展支持。异步调用编程、配置、使用都非常简单,需要编写服务的基础。详细的介绍参看guzz帮助的12、13节介绍:http://www.guzz.org/wiki/GuzzGuide
下一版本开发计划:
- 自定义属性支持。允许对象拥有不确定的属性,以及相对应的不确定的数据库字段。主要应用于自定义表单、购物商品等场景。
- 数据库自动分库支持。允许1个或多个表,分散在多台数据库中。
- 探索SASS(软件就是服务)的数据层模型。
上一篇: mybatis完美实战教程
下一篇: Lucene4的Version字段探索