`
dingjun1
  • 浏览: 215207 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

hdfs-<NameNode的format>

阅读更多
1、在属性dfs.namenode.name.dir指定的目录中创建相应的元数据文件

a)current/VERSION
#Fri Dec 06 11:21:35 CST 2013
namespaceID=140437801
clusterID=CID-5a02557f-1977-44d6-b7bc-d124be2d0ba3
cTime=0
storageType=NAME_NODE
blockpoolID=BP-599437854-10.12.120.79-1386299958223
layoutVersion=-47


b)current/seen_txid
写入事务序号txid
0


FSImage$FSImageSaver写入current/fsimage.ckpt
然后再重命名为fsimage(+19位的txid)fsimage_0000000000000000000
1、文件头
out.writeInt(HdfsConstants.LAYOUT_VERSION);
out.writeInt(sourceNamesystem.unprotectedGetNamespaceInfo()
            .getNamespaceID());
out.writeLong(fsDir.rootDir.numItemsInTree());//整个文件系统中包含有多少文件和目录
out.writeLong(sourceNamesystem.getGenerationStampV1());
out.writeLong(sourceNamesystem.getGenerationStampV2());       out.writeLong(sourceNamesystem.getGenerationStampAtblockIdSwitch());
out.writeLong(sourceNamesystem.getLastAllocatedBlockId());
out.writeLong(context.getTxId());
out.writeLong(sourceNamesystem.getLastInodeId());


2、接下来便是目录和文件的元数据信息
Map<String, INodeFileUnderConstruction> nodes =
          leaseManager.getINodesUnderConstruction();
      out.writeInt(nodes.size()); // write the size    
      for (Map.Entry<String, INodeFileUnderConstruction> entry
           : nodes.entrySet()) {
        FSImageSerialization.writeINodeUnderConstruction(
            out, entry.getValue(), entry.getKey());
writeString(path, out);
    out.writeLong(cons.getId());
    out.writeShort(cons.getFileReplication());
    out.writeLong(cons.getModificationTime());
    out.writeLong(cons.getPreferredBlockSize());

    writeBlocks(cons.getBlocks(), out);
    cons.getPermissionStatus().write(out);

    writeString(cons.getClientName(), out);
    writeString(cons.getClientMachine(), out);

    out.writeInt(0); //  do not store locations of last block

      }





参考:http://abloz.com/2013/01/08/hadoop-1-0-4-fsimage-file-format.html
http://blog.csdn.net/xhh198781/article/details/6904615
分享到:
评论

相关推荐

    Hadoop框架之HDFS的shell操作

    使用方式为“hadoop fs -stat [format] &lt;路径&gt;”。 21. tail命令:用于查看文件尾部信息。使用方式为“hadoop fs -tail [-f] &lt;文件&gt;”。 22. chmod命令:用于修改文件或目录的权限。使用方式为“hadoop fs -chmod ...

    Hadoop(HDFS文件系统)命令操作

    - **-stat [format] &lt;path&gt;**:显示文件的状态信息。 - **-tail [-f] &lt;file&gt;**:显示文件的最后几行。 - **-test -[defsz] &lt;path&gt;**:测试文件或目录的状态。 - **-text [-ignoreCrc] &lt;src&gt;**:以文本形式显示文件...

    hadoop命令指南

    hadoop job [-list] [-list-active-trackers] [-history &lt;file&gt;] [-status &lt;jobid&gt;] [-kill &lt;jobid&gt;] [-info &lt;jobid&gt;] [-counters &lt;jobid&gt;] [-tasks &lt;jobid&gt;] [-conf &lt;configuration file&gt;] [-D &lt;property=value&gt;] ...

    Hadoop安装教程_伪分布式配置_CentOS6.4_Hadoop2.61

    &lt;value&gt;/usr/local/hadoop_store/hdfs/namenode&lt;/value&gt; &lt;/property&gt; &lt;property&gt; &lt;name&gt;dfs.data.dir&lt;/name&gt; &lt;value&gt;/usr/local/hadoop_store/hdfs/datanode&lt;/value&gt; &lt;/property&gt; &lt;/configuration&gt; ``` **...

    hdfs的高可用搭建

    - 使用`hdfs namenode -format`命令格式化文件系统。 - 确保JournalNode已经启动,然后执行格式化操作。 5. **启动HDFS服务**: - 在所有DataNode上安装并配置Hadoop环境。 - 启动DataNode服务。 - 最后启动...

    CentOS7 Hadoop 2.7.X 安装部署.rar

    sudo -u hdfs hdfs namenode -format ``` 六、启动Hadoop服务 创建Hadoop的系统用户和服务,并启动所有Hadoop进程: ```bash sudo useradd -r -M -s /sbin/nologin hdfs sudo su - hdfs sudo -u hdfs hadoop fs -...

    hadoop完全分布式搭建.pdf

    - `&lt;name&gt;dfs.namenode.name.dir&lt;/name&gt;` 定义了NameNode存储元数据的目录,即 `file:///data/hadoop/hdfs/name`。 - `&lt;name&gt;dfs.datanode.data.dir&lt;/name&gt;` 是DataNode存储数据块的目录,设置为 `file:///data/...

    hadoop-2.4.1安装软件包以及教程jdk.zip

    hdfs namenode -format (hadoop namenode -format) 3.4启动hadoop 先启动HDFS sbin/start-dfs.sh 再启动YARN sbin/start-yarn.sh 3.5验证是否启动成功 使用jps命令验证 27408 NameNode 28218 Jps ...

    hadoop配置.zip

    hdfs namenode -format -force ``` 3. 启动服务: - 启动所有相关的Hadoop进程,包括NameNode、JournalNode、DataNode等。 4. 配置自动故障切换(Automatic Failover, AFO): - 在ResourceManager节点上配置...

    12_离线计算系统_第12天(辅助系统).docx

    sqoop import/export --connect &lt;JDBC_URL&gt; --table &lt;TABLE_NAME&gt; --target-dir &lt;HDFS_DIR&gt; --username &lt;USER&gt; --password &lt;PASSWORD&gt; [其他选项] ``` 1.4.2 Sqoop 导入示例 导入 MySQL 数据库中的 `mytable` 到 ...

    Hadoop_HDFS_HBase在centos上部署

    sudo -u hdfs hdfs namenode -format start-dfs.sh start-yarn.sh jps # 检查是否所有进程都已启动 ``` ### 二、HBase的安装与运行 #### 1. 安装HBase HBase通常与Hadoop一起使用,因此确保Hadoop已经正确配置。...

    hadoop-2.6.0.tar

    &lt;value&gt;/data/hdfs/namenode&lt;/value&gt; &lt;/property&gt; &lt;property&gt; &lt;name&gt;dfs.datanode.data.dir&lt;/name&gt; &lt;value&gt;/data/hdfs/datanode&lt;/value&gt; &lt;/property&gt; &lt;/configuration&gt; ``` - 配置yarn-site.xml(如果使用YARN...

    配置】单机伪分布式hadoop.zip

    hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-&lt;version&gt;.jar wordcount input output ``` 以上就是配置单机伪分布式Hadoop的基本步骤,这将帮助你理解Hadoop的工作原理,并为更复杂的分布式环境...

    hadoop-3.1.3.tar.gz

    在Hadoop目录下运行`hdfs namenode -format`命令即可。 六、启动Hadoop服务 Hadoop的服务包括NameNode、DataNode、SecondaryNameNode以及ResourceManager、NodeManager等。启动Hadoop集群,可以依次执行以下命令: ...

    Hadoop_Hbase集群安装部署手册

    &lt;value&gt;/data/hadoop/hdfs/namenode&lt;/value&gt; &lt;/property&gt; &lt;property&gt; &lt;name&gt;dfs.datanode.data.dir&lt;/name&gt; &lt;value&gt;/data/hadoop/hdfs/datanode&lt;/value&gt; &lt;/property&gt; ``` - `mapred-site.xml`: 指定MapReduce...

    Centos7中安装hadoop资源包

    sudo -u hdfs hdfs namenode -format ``` 接着启动所有服务: ```bash sudo systemctl start hadoop-hdfs-namenode sudo systemctl start hadoop-hdfs-datanode sudo systemctl start hadoop-yarn-resourcemanager...

    hadoop hdfs配置

    &lt;value&gt;hdfs://192.168.170.130:9000&lt;/value&gt; &lt;/property&gt; &lt;property&gt; &lt;name&gt;Hadoop.tmp.dir&lt;/name&gt; &lt;value&gt;/opt/Hadoop-1.2&lt;/value&gt; &lt;/property&gt; &lt;/configuration&gt; ``` - **解释**: - `fs.default.name`...

    hadoop2.7配置

    &lt;description&gt;namenode SAVE hdfs NAMESPACE BYTES&lt;/description&gt; &lt;/property&gt; &lt;property&gt; &lt;name&gt;dfs.data.dir&lt;/name&gt; &lt;value&gt;/usr/hadoop/hdfs/data&lt;/value&gt; &lt;description&gt;datanode DATA STORAGE&lt;/...

    Hadoop3.0版本分布式搭建

    hdfs namenode -format ``` **4.2 启动集群** 使用以下命令启动 Hadoop 集群: ```bash sbin/start-dfs.sh sbin/start-yarn.sh ``` 至此,Hadoop 3.0 分布式集群的搭建完成。接下来可以进行相关的测试和数据分析...

    安装hadoop集群三台虚拟机

    1. **格式化HDFS**:在NameNode上执行命令`hdfs namenode -format`。 2. **启动Hadoop服务**:在NameNode上执行命令`start-dfs.sh`来启动HDFS,在ResourceManager上执行`start-yarn.sh`启动YARN。 #### 六、验证...

Global site tag (gtag.js) - Google Analytics