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

Hadoop系列-fs包之代码实现

阅读更多
在此包中,最重要的是FileSystem抽象类。它定义了文件系统中涉及的一些基本操作,如:create,rename,delete...另外包括 一些分布式文件系统具有的操作:copyFromLocalFile,copyToLocalFile,...类似于Ftp中put和get操作。 LocalFileSystem和DistributedFileSystem,继承于此类,分别实现了本地文件系统和分布式文件系统。
了解了最重要的类之后,看一看它的一系列stream类:
  • FSOutputStream在原有OutputStream基础之上添加了获得文件指针偏移量的getPos方法。可以通过FileSystem的 createRaw获得它的实例。这里存在一个疑问,这个扩展的getPos方法在fs包中没有被使用。如果在其余包中同样没有被使用,那么扩展就显得多 余。
  • FSInputStream在原有InputStream基础之上同样添加了getPos方法,同时可以通过seek方法定位指定的偏移量处。可以通过 FileSystem的openRaw获得它的实例。新添加的getPos和seek方法在FSDataInputStream类中被使用。
  • FSDataOutputStream继承于DataOutputStream,包装了FSOutputStream。与DataOutputStream相比,不同之处在于:
  1. 添加了getPos方法,它是利用PositonCache记录当前的position
  2. 通过Buffer内类对输出进行缓存处理,改进性能
  3. 可以构建具有checksum的流,保证数据的正确性
  • FSDataInputStram继承于DataInputStream,包装了FSInputStream。与DataInputStream相比,不同之处在于:
  1. 添加了seek和getPos方法
  2. 通过Buffer内类对输入进行缓存处理,改进性能
  3. 可以构建具有checksum的流,保证数据的正确性
另外,为了屏蔽Windows和Unix、Linux在路径处理上存在的差异,实现了Path类,提供了统一的处理方式。
分享到:
评论

相关推荐

    flink-hadoop-fs-1.14.3-API文档-中文版.zip

    赠送jar包:flink-hadoop-fs-1.14.3.jar; 赠送原API文档:flink-hadoop-fs-1.14.3-javadoc.jar; 赠送源代码:flink-hadoop-fs-1.14.3-sources.jar; 赠送Maven依赖信息文件:flink-hadoop-fs-1.14.3.pom; 包含...

    flink-hadoop-fs-1.13.2-API文档-中文版.zip

    赠送jar包:flink-hadoop-fs-1.13.2.jar; 赠送原API文档:flink-hadoop-fs-1.13.2-javadoc.jar; 赠送源代码:flink-hadoop-fs-1.13.2-sources.jar; 赠送Maven依赖信息文件:flink-hadoop-fs-1.13.2.pom; 包含...

    flink-hadoop-fs-1.7.1-API文档-中文版.zip

    赠送jar包:flink-hadoop-fs-1.7.1.jar 赠送原API文档:flink-hadoop-fs-1.7.1-javadoc.jar 赠送源代码:flink-hadoop-fs-1.7.1-sources.jar 包含翻译后的API文档:flink-hadoop-fs-1.7.1-javadoc-API文档-中文...

    flink-hadoop-fs-1.12.7-API文档-中文版.zip

    赠送jar包:flink-hadoop-fs-1.12.7.jar; 赠送原API文档:flink-hadoop-fs-1.12.7-javadoc.jar; 赠送源代码:flink-hadoop-fs-1.12.7-sources.jar; 赠送Maven依赖信息文件:flink-hadoop-fs-1.12.7.pom; 包含...

    flink-hadoop-fs-1.10.0-API文档-中文版.zip

    赠送jar包:flink-hadoop-fs-1.10.0.jar; 赠送原API文档:flink-hadoop-fs-1.10.0-javadoc.jar; 赠送源代码:flink-hadoop-fs-1.10.0-sources.jar; 赠送Maven依赖信息文件:flink-hadoop-fs-1.10.0.pom; 包含...

    flink-hadoop-fs-1.14.3-API文档-中英对照版.zip

    赠送jar包:flink-hadoop-fs-1.14.3.jar; 赠送原API文档:flink-hadoop-fs-1.14.3-javadoc.jar; 赠送源代码:flink-hadoop-fs-1.14.3-sources.jar; 赠送Maven依赖信息文件:flink-hadoop-fs-1.14.3.pom; 包含...

    Hadoop Real-World Solutions Cookbook 源代码

    Hadoop Real-World Solutions Cookbook source code 源代码

    flink-hadoop-fs-1.13.2-API文档-中英对照版.zip

    赠送jar包:flink-hadoop-fs-1.13.2.jar; 赠送原API文档:flink-hadoop-fs-1.13.2-javadoc.jar; 赠送源代码:flink-hadoop-fs-1.13.2-sources.jar; 赠送Maven依赖信息文件:flink-hadoop-fs-1.13.2.pom; 包含...

    flink-hadoop-fs-1.7.1-API文档-中英对照版.zip

    赠送jar包:flink-hadoop-fs-1.7.1.jar 赠送原API文档:flink-hadoop-fs-1.7.1-javadoc.jar 赠送源代码:flink-hadoop-fs-1.7.1-sources.jar 包含翻译后的API文档:flink-hadoop-fs-1.7.1-javadoc-API文档-中文...

    hadoop最新版本3.1.1全量jar包

    hadoop-annotations-3.1.1.jar hadoop-common-3.1.1.jar hadoop-mapreduce-client-core-3.1.1.jar hadoop-yarn-api-3.1.1.jar hadoop-auth-3.1.1.jar hadoop-hdfs-3.1.1.jar hadoop-mapreduce-client-hs-3.1.1.jar ...

    hbase-hadoop2-compat-1.2.12-API文档-中文版.zip

    赠送jar包:hbase-hadoop2-compat-1.2.12.jar; 赠送原API文档:hbase-hadoop2-compat-1.2.12-javadoc.jar; 赠送源代码:hbase-hadoop2-compat-1.2.12-sources.jar; 赠送Maven依赖信息文件:hbase-hadoop2-compat-...

    hbase-hadoop2-compat-1.1.3-API文档-中文版.zip

    赠送jar包:hbase-hadoop2-compat-1.1.3.jar; 赠送原API文档:hbase-hadoop2-compat-1.1.3-javadoc.jar; 赠送源代码:hbase-hadoop2-compat-1.1.3-sources.jar; 赠送Maven依赖信息文件:hbase-hadoop2-compat-...

    hadoop-mapreduce-client-jobclient-2.6.5-API文档-中文版.zip

    赠送jar包:hadoop-mapreduce-client-jobclient-2.6.5.jar; 赠送原API文档:hadoop-mapreduce-client-jobclient-2.6.5-javadoc.jar; 赠送源代码:hadoop-mapreduce-client-jobclient-2.6.5-sources.jar; 赠送...

    hadoop-fs指令学习

    hadoop-fs指令学习 hadoop-fs指令学习 hadoop-fs指令学习 hadoop-fs指令学习 hadoop-fs指令学习

    hadoop-yarn-client-2.6.5-API文档-中文版.zip

    赠送jar包:hadoop-yarn-client-2.6.5.jar; 赠送原API文档:hadoop-yarn-client-2.6.5-javadoc.jar; 赠送源代码:hadoop-yarn-client-2.6.5-sources.jar; 赠送Maven依赖信息文件:hadoop-yarn-client-2.6.5.pom;...

    hadoop-yarn-common-2.6.5-API文档-中文版.zip

    赠送jar包:hadoop-yarn-common-2.6.5.jar 赠送原API文档:hadoop-yarn-common-2.6.5-javadoc.jar 赠送源代码:hadoop-yarn-common-2.6.5-sources.jar 包含翻译后的API文档:hadoop-yarn-common-2.6.5-javadoc-...

    flink-1.0.3-bin-hadoop27-scala_2

    flink-1.0.3-bin-hadoop27-scala_2flink-1.0.3-bin-hadoop27-scala_2

    hadoop-eclipse-plugin-2.10.0.jar

    Eclipse集成Hadoop2.10.0的插件,使用`ant`对hadoop的jar包进行打包并适应Eclipse加载,所以参数里有hadoop和eclipse的目录. 必须注意对于不同的hadoop版本,` HADDOP_INSTALL_PATH/share/hadoop/common/lib`下的jar包...

    hadoop2.6-common-bin.zip

    hadoop2.6-common-bin 解决在Windows上操作hadoop出现 Could not locate executable问题

    hadoop-eclipse-plugin-2.7.3和2.7.7

    hadoop-eclipse-plugin-2.7.3和2.7.7的jar包 hadoop-eclipse-plugin-2.7.3和2.7.7的jar包 hadoop-eclipse-plugin-2.7.3和2.7.7的jar包 hadoop-eclipse-plugin-2.7.3和2.7.7的jar包

Global site tag (gtag.js) - Google Analytics