标签:style blog class code c java
- put localsrc dst //从本地文件移动到hdfs -get src localsrc //复制文件到本地 -text src //显示文件内容 其他类似于linux shell
50070:查看NameNode状态 50075:查看DataNode状态 50090:查看SecondaryNameNode 50030:查看JobTracker状态 50060:查看TaskTracker状态
在启动hadoop集群的时候,集群的运行首先进入到安全模式下(safeMode),以检查数据完整性
<property>(hdfs-default.xml,302行) <name>dfs.safemode.threshold.pct</name> <value>0.999f</value> </property>
这里定义了一个最小的副本率0.999,如果应该有5个副本存在,却只存在3个副本,3/5=0.6<0.999,则系统会自动地复制副本到其他DataNode,使得副本率不小于0.999,相反,如果此时系统中有8个副本,则会自动删除多余的3个副本
安全模式相关操作:
hadoop fs –safemode get:查看安全模式状态
hadoop fs –safemode enter:进入安全模式状态
hadoop fs –safemode leave:离开安全模式状态
注意:1)需注释掉org.apache.hadoop.fs.FileUtil类的checkReturnValue方法(688—692),否则可能出现权限问题)
2)需要修改远程登录客户端的用户名,以避免权限问题
我的电脑-管理-本地用户和组;
注册表“HKEY_LOCAL_MACHINE\SOFEWARE\Microsoft\Windows NT\CurrentVersion 修改 RegisteredOwner
写文件:
String uri="hdfs://hadoop:9000/"; Configuration configuration=new Configuration(); FileSystem fileSystem=FileSystem.get(URI.create(uri),configuration); final String pathString="/input"; final FSDataOutputStream fsDataOutputStream=fileSystem.create(new Path(pathString)); IOUtils.copyBytes(new ByteArrayInputStream("wish\n".getBytes()),fsDataOutputStream,configuration,false); IOUtils.copyBytes(new ByteArrayInputStream("wish you happy \n".getBytes()),fsDataOutputStream,configuration,true);
读文件:
String uri="hdfs://hadoop:9000/"; Configuration configuration=new Configuration(); FileSystem fileSystem=FileSystem.get(URI.create(uri),configuration); final String pathString="/output"; final FSDataInputStream fsDataInputStream=fileSystem.open(new Path(pathString)); IOUtils.copyBytes(fsDataInputStream, System.out, configuration,true);
创建目录:
String uri="hdfs://hadoop:9000/"; Configuration configuration=new Configuration(); FileSystem fileSystem=FileSystem.get(URI.create(uri),configuration); final String pathString="/d1"; boolean exists=fileSystem.exists(new Path(pathString)); if(!exists){ boolean result=fileSystem.mkdirs(new Path(pathString)); System.out.println(result); }
删除文件
String uri="hdfs://hadoop:9000/"; Configuration configuration=new Configuration(); FileSystem fileSystem=FileSystem.get(URI.create(uri),configuration); final String pathString="/output"; fileSystem.delete(new Path("/output"),true);
HDFS基础和java api操作,布布扣,bubuko.com
标签:style blog class code c java
原文地址:http://www.cnblogs.com/wishyouhappy/p/3730606.html