一、概述

二、理论笔记

三、实现

3.1. 流式接口

3.2. 上传文件

3.2.1. 创建文件

客户端在执行文件写操作前,首先需要调用 DistributedFileSystem.create() 创建一个空的 HDFS 文件,并且获取这个 HDFS 文件的输出流 HdfsDataOutputStream 对象。获取输出流对象后,客户端就可以在输出流 HdfsDataOutputStream 对象上调用 write() 方法执行写操作了。

3.2.2. 写数据

当用户代码通过 DistributedFileSystem.create() 方法创建了一个新文件,并获取了 DFSOutputStream 输出流对象之后,就可以在输出流对象上调用 write() 方法写数据了。

3.3. 追加写

客户端除了可以执行写新文件的操作外,还可以打开一个已有的文件并执行追加写操作。DistributedFileSystem.append() 方法就是用于打开一个己有的 HDFS 文件,并获取追加写操作的 HdfsDataOutputStream 对象。

3.3.1. 打开文件

3.3.2. 写数据