Hadoop权威指南-DFSClient

本文详细介绍了Hadoop的HDFS客户端,包括DFSClient的构造和关闭过程,如建立与NameNode的连接;文件和目录的管理,如DFSClient.open()用于打开文件;输入流的处理,如DFSInputStream的预取读和缓冲区设置;DistributedFileSystem的适配器模式应用;以及HDFS的常用工具,如Dfsadmin、shell命令和文件复制操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第9章 HDFS客户端

1. DFSClient的构造和关闭

DFSClient()构造方法的功能:

1) 读取配置项信息并初始化成员变量

2) 建立到NameNode的IPC连接(createRPCNamenode()和createNamenode())

 

DFSClient.close()关闭客户端的功能:

1) leasechecker.close()//关闭租约管理器

2) clientRunning=false;//中断DFSClient对象打开的输入输出流

3) RPC.stopProxy(rpcNamenode);

 

2.文件和目录、系统管理相关任务

DFSClient.checkOpen();//检查客户端是否关闭

然后通过RPC对象调用相应的远程Namenode方法完成操作

 

3.输入流

DFSClient.open();//打开文件构造并返回一个DFSInputStream对象

${dfs.read.prefetch.size}预取读的大小是10个数据块大小

${io.file.buffer.size}输入缓冲区大小

DFSInputStream.read();//读文件

DFSInputStream.close();//关闭流

 

4.DistributedFileSystem的实现

DistributedFileSystem是适配器模式的典型应用

构造DistributedFileSystem时会默认加载”hdfs-default.xml”和”hdfs-site.xml”文件

 

5.HDFS常用工具

Dfsadmin和shell

Hadoop fs –copyFromLocal 本地文件 HDFS文件

ToolRunner.run()创建必要的Configuration对象

GenericOptionsParser解析FsShell参数,并设置到Configuration中

hadoop fs –fs hdfs://example.com:54300 设置默认的文件系统

hadoop fs –D fs.default.name=hdfs://example.com:54300 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值