数据分片要理解

简介: 《基础》

上述的数据冗余可以通过数据的复制来进行解决,但是数据的扩张需要通过数据的分片来进行解决(如果在关系型数据库是分表)。

8.jpg

何为数据分片(segment,fragment, shard, partition),就是按照一定的规则,将数据集划分成相互独立、正交的数据子集,然后将数据子集分布到不同的节点上。

HDFS , mongoDB 的sharding 模式也基本是基于这种分片的模式去实现,我们在设计分片主要考虑到的点是:

  • 做数据分片,如何将数据映射到节点
  • 数据分片的特征值,即按照数据中的哪一个属性(字段)来分片
  • 数据分片的元数据的管理,如何保证元数据服务器的高性能、高可用,如果是一组服务器,如何保证强一致性

柔性化/异步化

异步化

在每一次调用,时间越长存在超时的风险就越大,逻辑越复杂执行的步骤越多存在失败的风险也就越大,如果在业务允许的情况下,用户调用只给用户必须要的结果,而不是需要同步的结果可以放在另外的地方异步去操作,这就减少了超时的风险也把复杂业务进行拆分减低复杂度。当然异步化的好处是非常多,例如削封解耦等等,这里只是从可用的角度出发。异步化大致有这三种的实现方式:

  • 服务端接收到请求后,创建新的线程处理业务逻辑,服务端先回应答给客户端

7.jpg

  • 服务端接收到请求后,服务端先回应答给客户端,再继续处理业务逻辑

6.jpg

相关文章
|
8月前
|
NoSQL Cloud Native MongoDB
分片集群中的分片集合
分片集群中的分片集合
|
11月前
|
存储 运维 监控
聊聊分片技术
今天来聊一聊开发中一个比较常见的概念“分片”技术。这个概念听起来好像是在讲切西瓜,但其实不是!它是指将大型数据或者任务分成小块处理的技术。
240 0
|
2月前
|
网络架构
IP数据报的分片的相关计算
IP数据报的分片的相关计算
52 4
|
2月前
|
存储 缓存 负载均衡
软件体系结构 - 数据分片(2)一致性哈希分片
【4月更文挑战第20天】软件体系结构 - 数据分片(2)一致性哈希分片
95 21
|
2月前
|
存储 缓存 NoSQL
软件体系结构 - 数据分片(1)哈希分片
【4月更文挑战第20天】软件体系结构 - 数据分片(1)哈希分片
57 8
|
12月前
|
NoSQL 算法 Redis
Redis集群哈希槽数据分片
Redis 集群有16384个哈希槽,每个key通过CRC16校验后对16384取模来决定放置哪个槽. 集群的每个节点负责一部分hash槽。这种结构很容易添加或者删除节点,并且无论是添加删除或者修改某一个节点,都不会造成集群不可用的状态。
202 0
Redis集群哈希槽数据分片
|
9月前
|
算法
29MyCat - 分片规则(固定分片hash算法)
29MyCat - 分片规则(固定分片hash算法)
32 0
|
9月前
38MyCat - 分片规则(自然月分片)
38MyCat - 分片规则(自然月分片)
28 0
|
12月前
|
存储 缓存 算法
三种常用的数据分片方式:Hash分片,一致性Hash分片和按照数据范围分片
三种常用的数据分片方式:Hash分片,一致性Hash分片和按照数据范围分片
346 0
三种常用的数据分片方式:Hash分片,一致性Hash分片和按照数据范围分片
|
存储 算法 关系型数据库
MyCat - 分片 - 分片规则 - 范围分片 | 学习笔记
快速学习 MyCat - 分片 - 分片规则 - 范围分片
84 0
MyCat - 分片 - 分片规则 - 范围分片 | 学习笔记

热门文章

最新文章