摘要:
InputFormat和RecordReader Hadoop提出了InputFormat的概念 org.apache.hadoop.mapreduce包里的InputFormat抽象类提供了如下列代码所示的两个方法 这些方法展示了InputFormat类的两个功能: 将输入文件切分为map处理所需 阅读全文
摘要:
Writable 和 WritableComparable接口 Writable接口 Writable接口的主要目的是,当数据在网络上传输或从硬盘读写时,提供数据的序列化和反序列化机智 所有用作mapper或reducer输入或输出的数据类型都必须实现这个接口 Comparable接口 用作键的数据 阅读全文
摘要:
Hadoop权威指南:通过FileSystem API读取数据 [TOC] 在Hadoop中,FileSystem是一个通用的文件系统API 获取FileSystem实例的几个静态方法 Configuration对象封装了客户端或服务器的配置,通过设置配置文件读取类路径来实现 第一种方法返回的是默认 阅读全文
摘要:
[TOC] Hadoop权威指南:从Hadoop URL读取数据 使用java.net.URL对象从Hadoop文件系统读取文件 实现类似linux中cat命令的程序 文件名 程序代码 编译 运行 说明 需要运行在配置hadoop的linux系统上 编译前,需要设置CLASSPATH "点击查看" 阅读全文
摘要:
Hadoop权威指南:压缩 [TOC] 文件压缩的两个好处: 减少储存文件所需要的磁盘空间 加速数据在网络和磁盘上的传输 压缩格式总结: | 压缩格式 | 工具 | 算法 | 文件扩展名 | 是否可切分 | | | | | | | | DEFLATE | 无 | DEFLATE | .deflate 阅读全文
摘要:
Hadoop权威指南:数据完整性 [TOC] 常用的错误检测码是CRC 32(循环冗余校验) HDFS的数据完整性 HDFS会对写入的所有数据计算校验和,并在读取数据时验证校验和 datanode负责在收到数据后储存该数据及其验证校验和 客户端从datanode读取数据时也会验证校验和,与datan 阅读全文
摘要:
Hadoop权威指南:HDFS Hadoop存档 [TOC] 每个文件按块方式存储, 每个块的元数据存储在namenode的内存中 Hadoop存档文件或HAR文件是一个更高效的文件存档工具,它将文件存入HDFS块,在减少内存使用的同时,允许对文件进行透明地访问 Hadoop存档文件可以用作MapR 阅读全文
摘要:
Hadoop权威指南:通过distcp并行复制 distcp是一个分布式复制程序,改程序可以从Hadoop文件系统间复制大量数据,也可以将大量的数据复制到Hadoop中 distcp的典型应用是在两个HDFS集群间传输数据 默认情况下, distcp会跳过目标路径下已经存在的文件,可以通过overw 阅读全文
摘要:
Hadoop权威指南:HDFS 数据流 [TOC] 剖析文件读取 1. 客户端通过调用 对象的 方法来打开希望读取的文件,对于HDFS来说, 这个对象是分布式文件系统的一个实例 2. 通过使用RPC来调用 ,以确定文件起始块的位置. 对于每一个块, 返回存有该块副本的 的地址, 这些datanode 阅读全文
摘要:
Hadoop权威指南:HDFS 目录,查询文件系统,删除文件 [TOC] 目录 实例提供了创建目录的方法 这个方法一次性创建所有必要但还没有的父目录 通常不需要显式创建一个目录,因为 调用 方法写入文件时会自动创建所有父目录 查询文件系统 文件元数据:FileStatus 类封装了文件系统中文件和目 阅读全文
摘要:
Hadoop权威指南:HDFS 写入数据 FileSystem类有一系列的新建文件的方法.最简单的方法是给准备建的文件指定一个Path对象,然后返回一个用于写入数据的输出流: 此方法有多个重载版本, 指定是否需要覆盖现有文件,文件备份数量,写入文件时所用缓冲区大小,文件块大小及文件权限. 方法能够为 阅读全文
摘要:
Hadoop权威指南:FSDataInputStream对象 FileSystem对象中的open()方法返回的是FSDataInputStream对象, 而不是标准的java.io类对象,这个类是继承了java.io.DataInputStream接口的一个特殊类,并支持随机访问,可以从流中的任意 阅读全文