【Hadoop生态】HDFS的元数据管理机制二

本文涉及的产品
数据管理 DMS,安全协同 3个实例 3个月
推荐场景:
学生管理系统数据库
简介: 【Hadoop生态】HDFS的元数据管理机制二

# 1. 元数据目录相关文件

在Hadoop的HDFS首次部署好配置文件之后,并不能马上启动使用,而是先要对文件系统进行格式化。需要在NameNode(NN)节点上进行如下的操作:

```bash

$HADOOP_HOME/bin/hdfs namenode –format

```

在这里要注意两个概念,一个是文件系统,此时的文件系统在物理上还不存在;二就是此处的格式化并不是指传统意义上的本地磁盘格式化,而是一些==清除与准备工作==。

格式化完成之后,将会在$dfs.namenode.name.dir/current目录下创建如下的文件结构,这个目录也正是namenode元数据相关的文件目录:

![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/7ab7ca0689c845aabe0f0cef790afc7f.jpeg#pic_center)


其中的dfs.namenode.name.dir是在hdfs-site.xml文件中配置的,默认值如下:

![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/6a4ad06a555e4585937132f55bda433f.jpeg#pic_center)


dfs.namenode.name.dir属性可以配置多个目录,各个目录存储的文件结构和内容都完全一样,相当于==备份==,这样做的好处是当其中一个目录损坏了,也不会影响到Hadoop的元数据,特别是当其中一个目录是NFS(网络文件系统Network File System,NFS)之上,即使你这台机器损坏了,元数据也得到保存。

下面对$dfs.namenode.name.dir/current/目录下的文件进行解释。



<font color=red size=5>VERSION</font>

>namespaceID=934548976

clusterID=CID-cdff7d73-93cd-4783-9399-0a22e6dce196

cTime=0

storageType=NAME_NODE

blockpoolID=BP-893790215-192.168.24.72-1383809616115

layoutVersion=-47


namespaceID/clusterID/blockpoolID 这些都是HDFS集群的唯一标识符。标识符被用来防止DataNodes意外注册到另一个集群中的namenode上。这些标识在联邦(federation)部署中特别重要。联邦模式下,会有多个NameNode独立工作。每个的NameNode提供唯一的命名空间(namespaceID),并管理一组唯一的文件块池(blockpoolID)。clusterID将整个集群结合在一起作为单个逻辑单元,在集群中的所有节点上都是一样的。

storageType说明这个文件存储的是什么进程的数据结构信息(如果是DataNode,storageType=DATA_NODE);

cTime NameNode存储系统创建时间,首次格式化文件系统这个属性是0,当文件系统升级之后,该值会更新到升级之后的时间戳;

layoutVersion表示HDFS永久性数据结构的版本信息,是一个负整数。

补充说明:

格式化集群的时候,可以指定集群的cluster_id,但是不能与环境中其他集群有冲突。如果没有提供cluster_id,则会自动生成一个唯一的ClusterID。

```bash

$HADOOP_HOME/bin/hdfs namenode -format -clusterId <cluster_id>

```

<font color=red size=5>seen_txid</font>

>$dfs.namenode.name.dir/current/seen_txid非常重要,是存放transactionId的文件,format之后是0,它代表的是namenode里面的edits_*文件的尾数,namenode重启的时候,会按照seen_txid的数字,循序从头跑edits_0000001~到seen_txid的数字。所以当你的hdfs发生异常重启的时候,一定要比对seen_txid内的数字是不是你edits最后的尾数。

Fsimage & edits

$dfs.namenode.name.dir/current目录下在format的同时也会生成fsimage和edits文件,及其对应的md5校验文件。

相关实践学习
MySQL基础-学生管理系统数据库设计
本场景介绍如何使用DMS工具连接RDS,并使用DMS图形化工具创建数据库表。
目录
相关文章
|
存储 分布式计算 资源调度
41 Hadoop的HA机制
41 Hadoop的HA机制
74 0
41 Hadoop的HA机制
|
5月前
|
存储 机器学习/深度学习 分布式计算
HDFS NameNode元数据管理
HDFS NameNode元数据管理
|
3月前
|
SQL 存储 数据管理
Hadoop-15-Hive 元数据管理与存储 Metadata 内嵌模式 本地模式 远程模式 集群规划配置 启动服务 3节点云服务器实测
Hadoop-15-Hive 元数据管理与存储 Metadata 内嵌模式 本地模式 远程模式 集群规划配置 启动服务 3节点云服务器实测
74 2
|
3月前
|
分布式计算 监控 Hadoop
Hadoop-29 ZooKeeper集群 Watcher机制 工作原理 与 ZK基本命令 测试集群效果 3台公网云服务器
Hadoop-29 ZooKeeper集群 Watcher机制 工作原理 与 ZK基本命令 测试集群效果 3台公网云服务器
59 1
|
3月前
|
分布式计算 Hadoop Unix
Hadoop-28 ZooKeeper集群 ZNode简介概念和测试 数据结构与监听机制 持久性节点 持久顺序节点 事务ID Watcher机制
Hadoop-28 ZooKeeper集群 ZNode简介概念和测试 数据结构与监听机制 持久性节点 持久顺序节点 事务ID Watcher机制
58 1
|
7月前
|
分布式计算 资源调度 监控
Hadoop性能优化优化元数据管理
【6月更文挑战第6天】
62 2
|
7月前
|
存储 分布式计算 监控
Hadoop性能优化元数据开销
【6月更文挑战第5天】
51 4
|
8月前
|
存储 分布式计算 Hadoop
Hadoop节点HDFS元数据与数据块的关系
【5月更文挑战第19天】
189 4
|
8月前
|
存储 分布式计算 大数据
【大数据技术Hadoop+Spark】Spark RDD设计、运行原理、运行流程、容错机制讲解(图文解释)
【大数据技术Hadoop+Spark】Spark RDD设计、运行原理、运行流程、容错机制讲解(图文解释)
512 0
|
8月前
|
存储 缓存 NoSQL
大数据 | HDFS 元数据持久化笔记
大数据 | HDFS 元数据持久化笔记
212 0

热门文章

最新文章