Redisson官方文档 - 5. 单个集合数据分片(Sharding)

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
云原生内存数据库 Tair,内存型 2GB
云数据库 Redis 版,经济版 1GB 1个月
简介: 在集群模式下,Redisson为单个Redis集合类型提供了自动分片的功能。在自动分片功能的帮助下,单个集合拆分以后均匀的分布在整个集群里,而不是被挤在单一一个节点里。Redisson通过自身的分片算法,将一个大集合拆分为若干个片段,然后将拆分后的片段均匀的分布到集群里各个节点里,保证每个节点分配到的片段数量大体相同。

在集群模式下,Redisson为单个Redis集合类型提供了自动分片的功能。

在自动分片功能的帮助下,单个集合拆分以后均匀的分布在整个集群里,而不是被挤在单一一个节点里。自动分片功能的优势主要有以下几点:

  1. 单个数据结构可以充分利用整个集群内存资源,而不是被某一个节点的内存限制。
  2. 将单个数据结构分片以后分布在集群中不同的节点里,不仅可以大幅提高读写性能,还能够保证读写性能随着集群的扩张而自动提升。

Redisson通过自身的分片算法,将一个大集合拆分为若干个片段(默认231个,分片数量范围是3 - 16834),然后将拆分后的片段均匀的分布到集群里各个节点里,保证每个节点分配到的片段数量大体相同。比如在默认情况下231个片段分到含有4个主节点的集群里,每个主节点将会分配到大约57个片段,同样的道理如果有5个主节点,每个节点会分配到大约46个片段。

目前支持的数据结构类型和服务包括集(Set)映射(Map)BitSet布隆过滤器(Bloom Filter)Spring CacheHibernate Cache

该功能仅限于Redisson PRO版本。

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
1月前
|
缓存 NoSQL 安全
玩转Redis!非常强大的Redisson分布式集合,少写60%代码
Redisson是Java的Redis客户端,提供实时数据平台服务,简化了分布式环境下的数据管理。它包含RList、RSet、RMap等分布式集合,支持ConcurrentMap和Set接口,确保线程安全和数据一致性。例如,RMap实现了本地缓存和监听器功能,允许数据监听和本地加速读取。此外,还提供了RSet的排序和去重功能,以及RQueue和RBlockingQueue等队列实现,支持阻塞操作。通过Redisson,开发者能轻松处理分布式系统的数据同步和操作。
|
2月前
|
SQL 存储 Java
Sharding-JDBC 如何实现分片
以上是V 哥在教学过程中实现分片的示例步骤,Sharding-JDBC能够实现SQL的分片操作,将请求路由到正确的数据库和表中,从而实现数据的水平扩展,这是在使用例如 MySQL作为数据库的场景中经常会使用到的,但如果你的企业正在考虑分布式数据库迁移,V 哥建议可以考虑 TiDB 或 OceanBase 这样的分布式数据库,因为它们天然就支持分布式,而不需要考虑这些。
|
2月前
|
Java Maven 数据库
【快速使用ShardingJDBC的哈希分片策略进行分库分表】
【快速使用ShardingJDBC的哈希分片策略进行分库分表】
153 0
|
8月前
|
存储 NoSQL 关系型数据库
【实战】在redis中怎样使用hash 实现类表结构存储数据
redis 中如何存储数据 如何实现类Mysql 式的表结构 具体实现方式。 详述
72 0
|
12月前
|
存储 NoSQL 算法
【Redis】集群数据hash分片算法
【Redis】集群数据hash分片算法
148 0
|
存储 NoSQL 前端开发
SpringBoot中如何实现Redis分库操作
SpringBoot中如何实现Redis分库操作
411 0
|
算法 中间件 关系型数据库
MyCat - 分片 - 分片规则 - 字符串 hash 解析算法 | 学习笔记
快速学习 MyCat - 分片 - 分片规则 - 字符串 hash 解析算法
228 0
MyCat - 分片 - 分片规则 - 字符串 hash 解析算法 | 学习笔记
|
SQL 算法 中间件
MyCat - 分片 - 分片规则 - 一致性 hash 算法 | 学习笔记
快速学习 MyCat - 分片 - 分片规则 - 一致性 hash 算法
286 0
|
NoSQL MongoDB
MongoDB sharding 集合不分片性能更高?
最近云上用户用户遇到一个 sharding 集群性能问题的疑惑,比较有代表性,简单分享一下 测试配置 mongos x 2、shard x 3 测试1:集合不开启分片,批量 insert 导入数据,每个 batch 100 个文档 测试2:集合开启分片,随机生成 shardKey,chunk 已...