m0_72579657 2022-10-31 11:30 采纳率: 100%
浏览 10
已结题

hdfs里的 ?edits和 ?fsimage作用?

在大数据的学习中:hdfs里的 ?edits和 ?fsimage作用?

  • 写回答

2条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-10-31 18:06
    关注
    • 请看👉 :HDFS的fsimage和edits是什么、有什么作用
    • 除此之外, 这篇博客: HDFS面试题中的 10、HDFS里面的edits和fsimage作用? 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
      1. fsimage文件其实是hadoop文件系统元数据的一个永久性的检查点,其中包含hadoop文件系统所有目录和inode的序列化信息,也就是目录树
      2. edits文件存放的是hadoop文件系统的所有更新操作的路径,文件系统客户端执行的所以写操作会被记录到edits文件中。

      fsimage和edits文件都是经过序列化的,在namenode启动的时候,它会将fsimage文件中的内容加载到内存中,之后再执行edits文件中的各项操作,使得内存中的元数据和实际的同步,存在内存中的元数据支持客户端的读操作。

      namenode起来之后,hdfs中的更新操作会重新写到edits文件中,因为fsimage文件一般都很大(GB级别的很常见),如果所有的更新操作都会往fsimage文件中添加,这样会导致系统运行的十分缓慢,但是如果往edits文件里面写就不会这样,每次执行写操作之后,且在向客户端发送成功代码之前,edits文件都需要同步更新。如果一个文件比较大,使得写操作需要向多台机器进行操作,只有当所有的写数据都执行完毕之后,写操作才会返回成功,这样的好处是任何的操作都不会因为机器的故障而导致元数据的不同步。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月3日
  • 已采纳回答 11月3日
  • 创建了问题 10月31日

悬赏问题

  • ¥15 Mapreduce是正常的,在运行其他jar包时并没有任何问题,只是在做LogCount.jar 时出的问题。如图所示
  • ¥15 ImportError: DLL load failed while importing _iterative: 找不到指定的模块。
  • ¥15 如何通过交互分析得出某高危患者对放疗获益更多
  • ¥15 相关性分析中,p<0.05, r=0.29,怎么评价相关性呢
  • ¥15 docker部署Mongodb后输入命令报错?
  • ¥15 将下列流程图转变成python程序代码
  • ¥15 我需要全国每个城市的最新小区名字等数据。
  • ¥15 开发一个小区生态的小程序
  • ¥15 如何解决Excel中dependent dropdown list 的问题
  • ¥15 MddBootstrapInitialize2失败