大数据之-Hadoop之HDFS_NameNode和Secondary NameNode工作机制_通过文件的增删改查说明---大数据之hadoop工作笔记0070_Hadoop

然后我们再来说一下,hadoop的集群中的namenode节点的工作原理.

1.我们先来大体的了解一下,如果有客户端要来上传文件,这个过程,会先访问namenode,给namenode节点发送请求

2.然后在数据传输的时候,namenode会先把数据存到内存中去,然后再传输到不同的datanode节点

3.但是在放到内存中去以后,如果突然断电了怎么办? 这个时候namenode,除了把数据放到内存中一份,还会往硬盘上,写一份

   写的这个文件叫做FsImage.

4.但是如果一有文件来上传namenode就去,把上传的数据放到内存中一份,接着再去放到FsImage一份.这样速度,效率太慢了,因为往硬盘中写数据,太慢

5.所以这个时候就有一个叫edits的文件,这个也是个磁盘文件,当有客户端来请求hadoop,去存文件或者删除数据的时候,namenode会把数据放到内存中,在

   edits文件中也放一份,注意这里edits文件,记录的仅仅是,比如增加了哪些数据,删除了哪些数据,等等,是比较少的信息,仅仅是做了个操作记录.

6.这样传输数据的时候,把数据放到内存中,然后操作记录,放到edits文件中,然后隔一段时间,再去把edits的内容,慢慢的去放到FsImage文件中去.

  这样就解决了速度慢的问题,以及数据安全的问题.