b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

java分布式文件系统_分布式小文件系统 开源_分布式文件系统有哪些(9)

电脑杂谈  发布时间:2017-04-08 00:11:46  来源:网络整理

在这里说的负载均衡,是宽泛意义上的均衡过程,主要涵盖两个阶段的事务,一个是在任务初始分配的时候尽可能合理分配,另一个是在事后时刻监督及时调整。。。

在HDFS中,ReplicationTargetChooser类,是负责实现为新分配的数据块寻找婆家的。基本上来说,数据块的分配工作和备份的数量、申请的客户端地址(也就是写入者)、已注册的数据服务器位置,密切相关。其算法基本思路是只考量静态位置信息,优先照顾写入者的速度,让多份备份分配到不同的机架去。具体算法,自行参见源码。此外,HDFS的Balancer类,是为了实现动态的负载调整而存在的。Balancer类派生于Tool类,这说明,它是以一个独立的进程存在的,可以独立的运行和配置。它运行有NamenodeProtocol和ClientProtocol两个协议,与主控服务器进行通信,获取各个数据服务器的负载状况,从而进行调整。主要的调整其实就是一个操作,将一个数据块从一个服务器搬迁到另一个服务器上。Balancer会向相关的目标数据服务器发出一个DataTransferProtocol.OP_REPLACE_BLOCK消息,接收到这个消息的数据服务器,会将数据块写入本地,成功后,通知主控服务器,删除早先的那个数据服务器上的同一块数据块。具体的算法请自行参考源码。。。

对于垃圾,大家应该耳熟能详了,在分布式文件系统而言,没有利用价的数据块备份,就是垃圾。在现实生活中,我们提倡垃圾分类,为了更好的理解分布式文件系统的垃圾收集,搞个分类也是很有必要的。基本上,所有的垃圾都可以视为两类,一类是由系统正常逻辑产生的,比如某个文件被删除了,所有相关的数据块都沦为垃圾了,某个数据块被负载均衡器移动了,原始数据块也不幸成了垃圾了。此类垃圾最大的特点,就是主控服务器是生成垃圾的罪魁祸首,也就是说主控服务器完全了解有哪些垃圾需要处理。另外还有一类垃圾,是由于系统的一些异常症状产生的,比如某个数据服务器停机了一段,重启之后发现其上的某个数据块已经在其他服务器上重新增加了此数据块的备份,它上面的那个备份过期了失去价了,需要被当作垃圾来处理了。此类垃圾的特点恰恰相反,主控服务器无法直接了解到垃圾状况,需要曲线救国。。。

在HDFS中,第一类垃圾的判定自然很容易,在一些正常的逻辑中产生的垃圾,全部被塞进了FSNamesystem的recentInvalidateSets这个Map中。而第二类垃圾的判定,则放在数据服务器发送其数据块信息来的过程中,经过与本地信息的比较,可以断定,此数据服务器上有哪些数据块已经不幸沦为垃圾。同样,这些垃圾也被塞到recentInvalidateSets中去。在与数据服务器进行心跳交流的过程中,主控服务器会将它上面有哪些数据块需要删除,数据服务器对这些数据块的态度是,直接物理删除。在GFS的论文中,对如何删除一个数据块有着不同的理解,它觉着应该先缓存起来,过几天没人想恢复它了再删除。在HDFS的文档中,则明确表示,在现行的应用场景中,没有需要这个需求的地方,因此,直接删除就完了。这说明,理念是一切分歧的根本:)。。。

V. 总结

整个分布式文件系统,计算系统,系统的设计理念,基本是一脉相承的。三类服务器、作为单点存在的核心控制服务器、基于日志的恢复机制、基于租约的保持联系机制、等等,在后续分布式计算系统和分布式中都可以看到类的影子,在分布式文件系统这里,我详述了这些内容,可能在后续就会默认知道而说的比较简略了。而刨去这一些,分布式文件系统中最大特点,就是文件块的冗余存储,它直接导致了较为复杂的写入流程。当然,虽说分布式文件系统在分布式计算和中都有用到,但如果对其机理没有兴趣,只要把它当成是一个可以在任何机器上使用的文件系统,就不会对其他上层建筑的理解产生障碍。。。


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-40093-9.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 孙一诗
      孙一诗

      建议中国放开2胎政策

    • 古伊娜
      古伊娜

      帮做不断提高产品质量

    热点图片
    拼命载入中...