2007-04-27
Hibernate shard介绍
hibernate shards源自google的一个工程师小团队的20%项目。它提供一个对数据库水平分割的解决方案。
hibernate shards是对hibernate core进行了扩展,降低了复杂度。从概念上可以分成2部分。
1、基础逻辑
该部分对
• org.hibernate.Session
• org.hibernate.SessionFactory
• org.hibernate.Criteria
• org.hibernate.Query
进行了扩展。
• org.hibernate.shards.session.ShardedSession
• org.hibernate.shards.ShardedSessionFactory
• org.hibernate.shards.criteria.ShardedCriteria
• org.hibernate.shards.query.ShardedQuery
你可以很方便的使用就像普通的hibernate应用。
2、应用逻辑部分
提供三个接口,用来处理具体的实现策略
• org.hibernate.shards.strategy.selection.ShardSelectionStrategy
• org.hibernate.shards.strategy.resolution.ShardResolutionStrategy
• org.hibernate.shards.strategy.access.ShardAccessStrategy
ShardAccessStrategy:
获取数据的策略,目前已经包含的实现有:
SequentialShardAccessStrategy:顺序策略
ParallelShardAccessStrategy:并发策略
如果你想只取某一个库,目前你只能通过取具体的数据库的SessionFactory。目前在策略里还不支持取其中的某个或某几个库,暂时是所有
数据库都参与。
ShardSelectionStrategy:
当一个新数据保存时,决定存储到那个数据库。
ShardResolutionStrategy:
当数据修改后,判断同步到哪一个数据库。

hibernate shards是对hibernate core进行了扩展,降低了复杂度。从概念上可以分成2部分。
1、基础逻辑
该部分对
• org.hibernate.Session
• org.hibernate.SessionFactory
• org.hibernate.Criteria
• org.hibernate.Query
进行了扩展。
• org.hibernate.shards.session.ShardedSession
• org.hibernate.shards.ShardedSessionFactory
• org.hibernate.shards.criteria.ShardedCriteria
• org.hibernate.shards.query.ShardedQuery
你可以很方便的使用就像普通的hibernate应用。
2、应用逻辑部分
提供三个接口,用来处理具体的实现策略
• org.hibernate.shards.strategy.selection.ShardSelectionStrategy
• org.hibernate.shards.strategy.resolution.ShardResolutionStrategy
• org.hibernate.shards.strategy.access.ShardAccessStrategy
ShardAccessStrategy:
获取数据的策略,目前已经包含的实现有:
SequentialShardAccessStrategy:顺序策略
ParallelShardAccessStrategy:并发策略
如果你想只取某一个库,目前你只能通过取具体的数据库的SessionFactory。目前在策略里还不支持取其中的某个或某几个库,暂时是所有
数据库都参与。
ShardSelectionStrategy:
当一个新数据保存时,决定存储到那个数据库。
ShardResolutionStrategy:
当数据修改后,判断同步到哪一个数据库。

- 03:37
- 浏览 (609)
- 评论 (0)
- 分类: 计算机与 Internet
- 相关推荐
发表评论
- 浏览: 14695 次

- 详细资料
搜索本博客
最近加入圈子
最新评论
-
使用JBPM实现动态会签
太感谢楼主的分享精神了,搞了好久的会签 被楼主点通了,谢谢
-- by rebellan -
terracotta在hibernate应 ...
没有,之前没有出现过这种情况,使用terracotta才出现的,去掉就不会出现这 ...
-- by pppppp -
terracotta在hibernate应 ...
是不是你让sessionfactory新建表了
-- by daquan198163 -
使用JBPM实现动态会签
问题已经解决。是测试程序测试方法不对造成的。
-- by llandyl -
使用JBPM实现动态会签
如果将流程定义文件修改,变成两次调用生成<node name="forea ...
-- by llandyl






评论排行榜