- 博客(8)
- 资源 (4)
- 收藏
- 关注
原创 DataNode节点上数据块接收器——BlockReceiver
在前面的博文中详细地讲到了DataNode如何向客户端或者其它DataNode节点发送数据块Block的,即数据块发送器BlockSender,那么对应的,DataNode节点或者客户端就应该能够正确地接受数据块,也就是我们将要讲到的数据块的接收器BlockReceiver。当然,HDFS客户端和DataNode节点接收Block的方式有所不同,不过本文将主要讲解DataNode节点上的数据块接收
2012-01-12 19:06:02 5738
原创 DataNode节点上数据块发送器——BlockSender
在HDFS集群中,数据主要集中在DataNode节点之间、客户端与DataNode节点之间传输,如:客户利用客户端向HDFS中写入或读取数据;当NameNode节点检测到某一个数据块的副本不够时,会让某一个DataNode节点把该数据块复制到其它的DataNode节点上;当某个DataNode节点存储Block负载过重时会把它上面的一些数据块移动到其它DataNode上等等...所以本文将重点讨论
2012-01-10 20:02:55 3789
原创 DataNode节点上数据块的完整性——DataBlockScanner
由于每一个磁盘或者是网络上的I/O操作可能会对正在读写的数据处理不慎而出现错误,所以HDFS提供了下面两种数据检验方式,以此来保证数据的完整性,而且这两种检验方式在DataNode节点上是同时工作的:一.校验和 检测损坏数据的常用方法是在第一次进行系统时计算数据的校验和,在通道传输过程中,如果新生成的校验和不完全匹配原始的校验和,那么数据就会被认为是被损坏的。二.数据块检测
2012-01-09 19:33:00 6224 3
原创 DataNode节点的数据块管理(4)——FSDataset
本文作为DataNode节点的数据块管理系列的最后一篇博文,将详细讨论DataNode中直接为它服务而管理文件数据块的一个大家伙FSDatasetInterface,当然FSDatasetInterface只是一个接口,所要讲的主要是它的一个具体实现——FSDataset。FSDataset主要是在FSVolumeSet之上进行操作的,它的核心是为数据块创建I/O流。先来看看与FSDataset相
2012-01-08 16:17:53 3662
原创 DataNode节点的数据块管理(3)——FSVolumeSet、FSVolume
在分布式文件系统HDFS中,DataNode节点被用来存储文件的数据,确切的来说就是HDFS中的每一个文件是分块来存储的,一个文件可能有多个数据块,每一个数据块有多个副本,而且数据块的不同副本存储在不同的DataNode节点上,所以如果把整个HDFS集群看做一台机器的话,那么每一个DataNode节点就可以看做是一块存储磁盘。实际上,HDFS也正是这么干的。前面说过,每一个DataNode节点我们
2012-01-05 17:38:01 2888 3
原创 DataNode节点的数据块管理(2)——DF、DU
HDFS作为一个分布式文件系统,它必须要知道自己当前整个集群存储空间的状态信息,如总容量、使用量、使用率、剩余可用量等信息,而HDFS正是通过统计所有的DataNode节点的存储空间信息来实现的。当DataNode节点向NameNode发送心跳包的时候,会顺便把自己当前的存储容量信息一并报告给它,那么,DataNode是如何知道自己的存储空间使用信息的呢?如果仅仅是通过人工输入总存储空间容量,统计
2012-01-03 15:10:21 3745
原创 DataNode节点的数据块管理(1)——FSDir
在前面我说过,一个DataNode可以配置多个本地存储目录来存储与自己相关的数据,这些数据主要是NameNode分配给它并要它存储的文件数据块,另外,这些数据块是存储在本地存储目录的current/子目录下面的,那么DataNode就需要能对这些数据块进行管理了,而且还能够为一个数据块分配足够的存储空间。因此,HDFS专门设计了org.apache.hadoop.hdfs.server.datan
2012-01-02 16:45:24 4437
原创 DataNode节点的数据存储器——DataStorage
对于每一个DataNode节点而言,它都需要本地文件系统来存储与自己相关的数据。在前面的文章中我已经说过,任何节点都可以配置多个本地存储路径,每一个存储路径又被HDFS抽象成了一个StorageDirectory对象,但为了DataNode节点对自己存储路径的方便,HDFS又为每一个DataNode节点设计了一个DataStorage对象,DataNode节点可以利用这个对象对自己的所有存储路径进
2012-01-01 13:52:55 4648 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人