3种形式的元数据,fsimage是在磁盘上,meta.data是在内存上,

我们继续,前面呢,断点是打在这一行代码处,

FileSystem fs = FileSystem.get(conf);

weekend110的hdfs下载数据源码跟踪铺垫  +  hdfs下载数据源码分析-getFileSystem

现在,开始weekend110的hdfs源码跟踪之打开输入流

1、  清掉之前,所有的断点,

dfs是fs的成员,

此刻,断点过不去了,为什么?因为,这需要在服务器上运行。

由此可见,newInfo里面就是block信息。

LocatedBlocks{

fileLength=143588167

underConstruction=false

blocks=[LocatedBlock{BP-168439838-192.168.80.110-1468829197712:blk_1073741856_1032; getBlockSize()=134217728; corrupt=false; offset=0; locs=[192.168.80.110:50010]}, LocatedBlock{BP-168439838-192.168.80.110-1468829197712:blk_1073741857_1033; getBlockSize()=9370439; corrupt=false; offset=134217728; locs=[192.168.80.110:50010]}]

lastLocatedBlock=LocatedBlock{BP-168439838-192.168.80.110-1468829197712:blk_1073741857_1033; getBlockSize()=9370439; corrupt=false; offset=134217728; locs=[192.168.80.110:50010]}

isLastBlockComplete=true}

BP-168439838-192.168.80.110-1468829197712

这是机器集群的信息,

[hadoop@weekend110 app]$ cd hadoop-2.4.1/

[hadoop@weekend110 hadoop-2.4.1]$ ll

total 60

drwxr-xr-x. 2 hadoop hadoop  4096 Jul 18 15:48 bin

drwxrwxr-x. 4 hadoop hadoop  4096 Jul 18 20:37 data

drwxr-xr-x. 3 hadoop hadoop  4096 Jun 21  2014 etc

drwxr-xr-x. 2 hadoop hadoop  4096 Jun 21  2014 include

drwxr-xr-x. 3 hadoop hadoop  4096 Jun 21  2014 lib

drwxr-xr-x. 2 hadoop hadoop  4096 Jun 21  2014 libexec

-rw-r--r--. 1 hadoop hadoop 15458 Jun 21  2014 LICENSE.txt

drwxrwxr-x. 3 hadoop hadoop  4096 Jul 22 11:20 logs

-rw-r--r--. 1 hadoop hadoop   101 Jun 21  2014 NOTICE.txt

-rw-r--r--. 1 hadoop hadoop  1366 Jun 21  2014 README.txt

drwxr-xr-x. 2 hadoop hadoop  4096 Jun 21  2014 sbin

drwxr-xr-x. 4 hadoop hadoop  4096 Jun 21  2014 share

[hadoop@weekend110 hadoop-2.4.1]$ clear

[hadoop@weekend110 hadoop-2.4.1]$ cd data/

[hadoop@weekend110 data]$ ll

total 8

drwxrwxr-x.  5 hadoop hadoop 4096 Jul 18 16:15 dfs

drwxr-xr-x. 12 hadoop hadoop 4096 Jul 22 11:20 nm-local-dir

[hadoop@weekend110 data]$ cd dfs/

[hadoop@weekend110 dfs]$ ll

total 12

drwx------. 3 hadoop hadoop 4096 Jul 18 23:07 data

drwxrwxr-x. 3 hadoop hadoop 4096 Jul 18 23:06 name

drwxrwxr-x. 3 hadoop hadoop 4096 Jul 18 23:07 namesecondary

[hadoop@weekend110 dfs]$ cd data/

[hadoop@weekend110 data]$ ll

total 8

drwxrwxr-x. 3 hadoop hadoop 4096 Jul 18 16:14 current

-rw-rw-r--. 1 hadoop hadoop   16 Jul 22 11:19 in_use.lock

[hadoop@weekend110 data]$ cd current/

[hadoop@weekend110 current]$ ll

total 8

drwx------. 4 hadoop hadoop 4096 Jul 22 11:20 BP-168439838-192.168.80.110-1468829197712

-rw-rw-r--. 1 hadoop hadoop  229 Jul 22 11:19 VERSION

[hadoop@weekend110 current]$ cd BP-168439838-192.168.80.110-1468829197712/

[hadoop@weekend110 BP-168439838-192.168.80.110-1468829197712]$ ll

total 12

drwxrwxr-x. 4 hadoop hadoop 4096 Jul 18 23:02 current

-rw-rw-r--. 1 hadoop hadoop    0 Jul 22 11:20 dncp_block_verification.log.curr

-rw-rw-r--. 1 hadoop hadoop  348 Jul 22 11:20 dncp_block_verification.log.prev

drwxrwxr-x. 2 hadoop hadoop 4096 Jul 22 11:19 tmp

[hadoop@weekend110 BP-168439838-192.168.80.110-1468829197712]$ cd current/

[hadoop@weekend110 current]$ ll

total 16

-rw-rw-r--. 1 hadoop hadoop   23 Jul 18 23:02 dfsUsed

drwxrwxr-x. 2 hadoop hadoop 4096 Jul 20 15:20 finalized

drwxrwxr-x. 2 hadoop hadoop 4096 Jul 20 15:20 rbw

-rw-rw-r--. 1 hadoop hadoop  131 Jul 22 11:19 VERSION

[hadoop@weekend110 current]$ cd finalized/

[hadoop@weekend110 finalized]$ ll

total 141340

-rw-rw-r--. 1 hadoop hadoop 134217728 Jul 19 09:59 blk_1073741856

-rw-rw-r--. 1 hadoop hadoop   1048583 Jul 19 09:59 blk_1073741856_1032.meta

-rw-rw-r--. 1 hadoop hadoop   9370439 Jul 19 09:59 blk_1073741857

-rw-rw-r--. 1 hadoop hadoop     73215 Jul 19 09:59 blk_1073741857_1033.meta

-rw-rw-r--. 1 hadoop hadoop       168 Jul 19 13:05 blk_1073741858

-rw-rw-r--. 1 hadoop hadoop        11 Jul 19 13:05 blk_1073741858_1034.meta

-rw-rw-r--. 1 hadoop hadoop        71 Jul 20 15:20 blk_1073741866

-rw-rw-r--. 1 hadoop hadoop        11 Jul 20 15:20 blk_1073741866_1042.meta

[hadoop@weekend110 finalized]$

以上是weekend110的hdfs源码跟踪之打开输入流

下面,继续,weekend110的hdfs源码跟踪之打开输入流总结

1 weekend110的hdfs源码跟踪之打开输入流 + hdfs源码跟踪之打开输入流总结的更多相关文章

  1. Hadoop源码分析之客户端向HDFS写数据

    转自:http://www.tuicool.com/articles/neUrmu 在上一篇博文中分析了客户端从HDFS读取数据的过程,下面来看看客户端是怎么样向HDFS写数据的,下面的代码将本地文件 ...

  2. [Spark内核] 第32课:Spark Worker原理和源码剖析解密:Worker工作流程图、Worker启动Driver源码解密、Worker启动Executor源码解密等

    本課主題 Spark Worker 原理 Worker 启动 Driver 源码鉴赏 Worker 启动 Executor 源码鉴赏 Worker 与 Master 的交互关系 [引言部份:你希望读者 ...

  3. Hadoop 修改源码以及将修改后的源码应用到部署好的Hadoop中

    我的Hadoop版本是hadoop-2.7.3, 我们可以去hadoop官网下载源码hadoop-2.7.3-src,以及编译好的工程文件hadoop-2.7.3, 后者可以直接部署. 前者hadoo ...

  4. div使用jqueryui 源码 | gridview多个功能的源码

    div使用jqueryui 源码 | gridview多个功能的源码 一.gridview 选中行 改变颜色,双击选中 改变颜色 protected void gv1_SelectedIndexCha ...

  5. 编译哈工大语言技术平台云LTP(C++)源码及LTP4J(Java)源码

    转自:编译哈工大语言技术平台云LTP(C++)源码及LTP4J(Java)源码 JDK:java version “1.8.0_31”Java(TM) SE Runtime Environment ( ...

  6. 【流媒体开发】VLC Media Player - Android 平台源码编译 与 二次开发详解 (提供详细800M下载好的编译源码及eclipse可调试播放器源码下载)

    作者 : 韩曙亮  博客地址 : http://blog.csdn.net/shulianghan/article/details/42707293 转载请注明出处 : http://blog.csd ...

  7. 【安卓本卓】Android系统源码篇之(一)源码获取、源码目录结构及源码阅读工具简介

    前言        古人常说,“熟读唐诗三百首,不会作诗也会吟”,说明了大量阅读诗歌名篇对学习作诗有非常大的帮助.做开发也一样,Android源码是全世界最优秀的Android工程师编写的代码,也是A ...

  8. Zookeeper 源码(三)Zookeeper 客户端源码

    Zookeeper 源码(三)Zookeeper 客户端源码 Zookeeper 客户端主要有以下几个重要的组件.客户端会话创建可以分为三个阶段:一是初始化阶段.二是会话创建阶段.三是响应处理阶段. ...

  9. Tomcat源码分析一:编译Tomcat源码

    Tomcat源码分析一:编译Tomcat源码 1 内容介绍 在之前的<Servlet与Tomcat运行示例>一文中,给大家带来如何在Tomcat中部署Servlet应用的相关步骤,本文将就 ...

  10. Android源码分析(十一)-----Android源码中如何引用aar文件

    一:aar文件如何引用 系统Settings中引用bidehelper-1.1.12.aar 文件为例 源码地址:packages/apps/Settings/Android.mk LOCAL_PAT ...

随机推荐

  1. nginx方面的书籍资料链接

    http://tengine.taobao.org/book/ http://blog.sina.com.cn/s/articlelist_1929617884_0_1.html http://blo ...

  2. C# 调用 MFC DLL

    创建项目 创建MFCDLL项目 MFC项目中这么声明 生成dll工程 可以看到库文件的生成目录,保存下来 创建测试用c#项目 我们创建一个按钮调用我们刚才的函数 这边这么调用MFC库的函数入口.这里并 ...

  3. substring和substr的用法

    substring 方法用于提取字符串中介于两个指定下标之间的字符 substring(start,end) 开始和结束的位置,从零开始的索引 返回值是一个新的字符串,该字符串值包含 stringOb ...

  4. 基于 Redis 数据累计的实现

    需求:对上传文件进行统一编号,以 xxx-YYYYmmdd-000001为编码格式,其中YYYYmmdd为当天传的日期. 技术方案:redis,get,set,incr,expireAt即可实现. p ...

  5. JavaScript模块化开发库之SeaJS

    SeaJS是一个很好的前端模块化开发库,源码不到1500行,压缩后才4k,质量极高.

  6. Python之路----数据类型

    Python的集成开发环境(IDE):pycharm 数据类型 数字 整数int(integer) 浮点数float 布尔型,只有两个值 真:True 假:False 字符串 列表 元组 字典 一.字 ...

  7. openssl Mac编译小记

    1. 下载openssl包 2. 解压 3. 打开控制台, 进入包目录, 执行 ./Configure darwin64-x86_64-cc 4. make 5. 得到 libcrypto.a lib ...

  8. OC 之 const

    1. 修饰变量 一般设置传参数的时候 若设置为const, 则在调用过程中不允许修改参数值;(readonly) // *前const: 不能通过指针, 改变p指向的值 const int *p = ...

  9. Nopcommerce 3.7 增加了Redis 作为缓存啦

    Nopcommerce 3.7  版增加了Redis 缓存,相比之前内存缓存, 感觉使用了Redis 作为缓存,明显加快了Web页面响应速度! 废话少说 拉代码: 1 git clone https: ...

  10. SQLite 对中文路径的支持(用到了StringToWideChar和Utf8Encode在D7的System单元中自带)

    最近用SQLITE作为数据库,发现,如果直接传递带中文路径或文件名的数据库,会导致无法打开数据库的情况.看了一下SQLITE的源码,才发现,原来SQLITE中是用UTF8编码进行文件打开操作的. 所以 ...