HDFS架构 之 元数据架构解析

news/2025/1/16 1:33:09/

1、内存Tree介绍啊

1.1 namenode启动流程

1.1.1 启动流程

1、加载fsimage文件
FsImage是一种持久化到磁盘上的文件,里面包含了集群大部分的meta数据,持久化的目的主要是为了防止meta数据丢失,也就是在HDFS不可用的情况下还能够保证绝大多数的数据是正常的。这个工作在Namenode服务中有专门的线程去做。FsImage文件最终会被保存在${dfs.namenode.name.dir}/current目录中。

FsImage包含了所有在持久化之前Namenode管理的meta信息,加载这些数据时会按照数据类型逐条、串行处理每一条数据,然后填充到Namenode内存中的主体结构FSDirectory中。。具体类型如下所示。

  • NS_INFO:描述当前namespace中的标识信息。
  • STRING_TABLE:描述当前namespace中String Table信息。
  • INODE:描述当前namespace中的文件数据。• INODE_REFERENCE:描述当前namespace中的inode reference信息。
  • SNAPSHOT:描述当前namespace中的snapshot信息。
  • INODE_DIR:描述当前namespace中的目录数据。
  • FILES_UNDERCONSTRUCTION:描述当前namespace中的正在生成文件的信息
  • SNAPSHOT_DIFF:描述当前namespace中存在差异的snapshot信息
  • SECRET_MANAGER:描述当前namespace中和Delegation Tok

http://www.ppmy.cn/news/1350256.html

相关文章

腾讯云4核8G12M轻量应用服务器性能够用吗?支持多少人?

腾讯云轻量4核8G12M轻量应用服务器支持多少人同时在线?通用型-4核8G-180G-2000G,2000GB月流量,系统盘为180GB SSD盘,12M公网带宽,下载速度峰值为1536KB/s,即1.5M/秒,假设网站内页平均大小为60KB…

VitePress-13- 配置-title的作用详解

作用描述 1、title 是当前站点的标题;2、默认值是 :VitePress;3、当使用默认主题时,会直接展示在 页面的【导航条】中;4、一个特殊的作用 : 会作为单个页面的默认标题后缀!除非又指定了【title…

Android---Jetpack Compose学习002

Compose 布局。Compose 布局的目标:1)实现高性能;2)让开发者能够轻松编写自定义布局;3)在 Compose 中,通过避免多次测量布局子级可实现高性能。如果需要进行多次测量,Compose 具有一…

Git Push -f 命令详解

直接看原文: Git Push -f 命令详解 - 玩转Linux - SegmentFault 思否 -------------------------------------------------------------------------------------------------------------------------------- git push -f 这个命令的作用是将自己本地仓库的代码直接推送至仓…

weilai8游戏爬虫

#!/usr/bin/python # -*- coding: UTF-8 -*- #!/usr/bin/python # -*- coding: UTF-8 -*- import os,csv import re import random import time import requests from lxml import etreefrom urllib.parse import quote, unquotepage98 sess requests.Session()#创建一个sessi…

pandas dataframe写入excel的多个sheet页面

pandas根据dataframe生成一个excel文件: Dataframe保存新文件 直接把dataframe格式的数据保存到多个sheet页程序如下: excel_file "导出excel文件.xlsx" if os.path.exists(excel_file):os.remove(excel_file)# 生成一个新文件 with pd.Ex…

第66讲管理员登录功能实现

项目样式初始化 放assets目录下; border.css charset "utf-8"; .border, .border-top, .border-right, .border-bottom, .border-left, .border-topbottom, .border-rightleft, .border-topleft, .border-rightbottom, .border-topright, .border-botto…

使用R语言建立回归模型并分割训练集和测试集

通过简单的回归实例&#xff0c;可以说明数据分割为训练集和测试集的必要性。以下先建立示例数据: set.seed(123) #设置随机种子 x <- rnorm(100, 2, 1) # 生成100个正态分布的随机数&#xff0c;均值为2&#xff0c;标准差为1 y exp(x) rnorm(5, 0, 2) # 生成一个新的变…