import java.net.URI;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;
import org.apache.log4j.BasicConfigurator;
import org.junit.Before;
import org.junit.Test;
public class hdfs_api {
public static void main(String[] args) throws Exception {
BasicConfigurator.configure();
// 上传一个文件
Configuration conf = new Configuration();
conf.set("dfs.replication", "1");
conf.set("dfs.blocksize", "64m");
FileSystem fs = FileSystem.get(new URI("hdfs://10.112.1.71:9000/"), conf, "root");
fs.copyFromLocalFile(new Path("D:/Tmp/test/1.txt"), new Path("/"));
fs.close();
}
FileSystem fs = null;
@Before // 单元测试执行前的代码
public void init() throws Exception {
Configuration conf = new Configuration();
conf.set("dfs.replication", "1");
conf.set("dfs.blocksize", "64m");
fs = FileSystem.get(new URI("hdfs://10.112.1.71:9000/"), conf, "root");
}
// 在HDFS中新建文件夹
@Test
public void testMkdir() throws Exception {
fs.mkdirs(new Path("/home/xie"));
fs.close();
}
// 从HDFS下载一个文件
@Test // 一个单元测试
public void testGet() throws Exception{
fs.copyToLocalFile(new Path("/1.txt"), new Path("d:/Tmp/down.txt"));
fs.close();
}
// 从HDFS一个文件
@Test
public void testdelete() throws Exception{
boolean del = fs.delete(new Path("/1.txt"),true);
fs.close();
}
// 从HDFS读取文件
@Test
public void cat()throws Exception{
FSDataInputStream cat = fs.open(new Path("/1.txt"));
IOUtils.copyBytes(cat,System.out,1024);
cat.close();
}
}
大数据之:HDFS_API
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- Below are 2 approaches to access HDFS data: HDFS cil comm...