GFS中的数据完整性校验
来源:互联网 发布:nginx 系统 日志 编辑:程序博客网 时间:2024/05/02 00:32
GFS chunk 64M 每个chunk 以64kb的块进行划分 ,每块对应一个32位的校验和,放到chunkserver的内存中。
每个chunkserver必须通过维护一个检验和来独立的验证它自己的拷贝的完整性。
为何64M?
1.减少master存储的元数据信息,因为元数据要放到内存以提供快速访问。例如,GFS系统中每个chunk大小为64MB,默认存储3份,每个chunk的元数据小于64字节。那么1PB数据的chunk元信息大小不超过1PB * 3 / 64MB * 64 = 3GB。
2.减少客户端与master的交互。
3.用户可能在一个块上执行操作,客户端与chunkserver保存较长的TCP连接,减少网络带宽。
64kb?
好计算,64M/64kb(这里不清楚)
文件读、 append的校验过程:
1.读文件
客户端向chunkserver发送读数据请求,chunkserver先通过其存储的校验和判断数据是否损坏,如果损坏,则向master报告,master将发出指令将其他节点的正确副本替换掉出错的副本;否则,chunkserver给用户返回正确的数据。
2.append
该操作主要存在数据覆盖的错误,所以在进行append时只增加最后一块的校验值。对于跨chunk边界的记录,边界前后的块都需要校验。
参考:
http://duanple.blog.163.com/blog/static/7097176720109151211526/
0 0
- GFS中的数据完整性校验
- 数据完整性校验
- 云存储中的数据完整性校验——综述
- 云存储中的数据完整性校验——综述
- HDFS之数据完整性校验
- 6- hadoop 数据完整性与校验
- 【Android数据加密与完整性校验之使用MessageDigest类进行MD5/SHA1】校验数据传输的完整性常用方式
- springmvc中的数据校验
- SpringMVC中的数据校验
- SpringMVC中的数据校验
- CakePHP中的数据校验
- SpringMVC中的数据校验
- RPM 校验软件包完整性
- Android代码完整性校验
- APK完整性校验代码
- APP 完整性校验
- Android完整性校验
- linux文件完整性校验
- .net Global中的所有事件
- 黑马程序员_对象的简单分析_对象与函数参数_常见错误
- Linux Slub分配器(六)--slab的分配与释放
- 关于Oracle SQL性能优化
- 地方很多染头发和为贵
- GFS中的数据完整性校验
- 少写了 @ResponseBody 引发的古怪问题
- 数据泡沫该如何面对
- 谈一谈二次空气喷射泵在汽车中具体应用
- Linux如何查看进程、杀死进程、启动进程等常用命令
- Linux Slub分配器(七)--销毁缓存
- java 对象排序
- Ring3/Ring0的四种通信方式
- android坐标体系系统介绍