网站首页 > 博客文章 正文
数据分布式存储原理,数据分布式规则?就这?怎么就数据分布式了。现在我们把MDC对应OSD数量生成的数据分布式规则交给VBS模块。
VBS是安装在用户系统中的一个代理,当用户需要存放数据在分布式存储中时,VBS会先接
收用户的数据,然后对用户数据进行切块分区(一般会把数据分成1MB大小的数据分片。
例如一个1GB的视频文件需要存放在分布式存储中,则会被VBS接收后分割为1024个1MB大
小的数据分片),接着对每个数据分片带有的SCSI标识进行格式转化,使之成为分布式存储
系统使用的Key标识。然后对key进行哈希计算,算出每个数据分片的哈希值。
可以这样理解,其实每个数据在操作系统下发存储的时候都会带着一个介绍信(SCSI标识),操作系统告诉数据拿着这个介绍信去找大V哥开房间存放数据。
分布式存储的VBS模块就是这个大V哥,当大V哥看到这个介绍信(SCSI标识)后就告诉数据,你的这个介绍信(SCSI标识)现在用不了了,必须重新登记一下,然后VBS就根据介绍信(SCSI标识)又开了一张票(Key)给数据,然后数据拿着这张票(Key)去找大V哥的小弟,小弟就根据票(key)来分配房卡(key带入哈希函数进行计算算出哈希值),开房间存放数据(如图)。
(图 数据分片逻辑图)
数据被VBS接收后,最终数据会变成多个1MB的小数据分片,并且每一个1MB的小数据块都会带着最终的哈希值 。哈希值可以在0-2^32之间取整,很巧的是,MDC生成的哈希路由圆环也刚好是2^32份个分区,那么哈希值取整是多少,该1MB数据分片就归属于哪一个分区。
由于MDC通过对应OSD和哈希路由圆环的分区生成了一个分区对应磁盘的关系(数据分布式规则),那么最终这个数据就存放在该分区对应的磁盘中,该磁盘的OSD会将数据持久化存放在磁盘介质中。(如图)若上文假设中提到分区1-分区3对应OSD1,刚好现在有一个数据分片对应的哈希值取整后为3,则该1MB数据归属在分区3,分区3对应OSD1,则由OSD1将该1MB数据存放到该OSD对应的磁盘中,完成数据落盘。
(图 哈希全流程图)
由于哈希路由圆环所生成的分区是均分对应到OSD上的,所以当大量数据存储时,由于概率,最终数据基本会均分到各个OSD对应的磁盘中存放起来。所有磁盘是并发工作的,都可以接收数据就等同于所有磁盘对应所在的服务器都是并发且相对均衡地接收数据,最终完成数据的分布式存储。
猜你喜欢
- 2024-12-14 分布式存储是硬件还是软件?和集中式存储有什么区别
- 2024-12-14 分布式数据中心或是未来数据中心发展方向
- 2024-12-14 什么是分布式文件存储系统 ?
- 2024-12-14 HDFS基础知识之数据目录和分布式存储
- 2024-12-14 Jtti:什么是分布式存储,分布式存储的优势和劣势
- 2024-12-14 近几天刷屏的区块链,到底是什么?
- 2024-12-14 分布式存储助推互联网发展
- 2024-12-14 分布式存储
- 2024-12-14 分布式存储最全详解(图文全面总结)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)