网上看到很多 Java api连接的建立方案,感觉有点繁琐,后查阅文档后得到最简单的两种方案
方案一:将要连接的hadoop集群中 hdfs-site.xml core-site.xml hbse-site.xml (连接hbase用)复制到RESOUCES 下,
获取hdfs 文件系统
Configuration configuration = new Configuration();
FileSystem fs = FileSystem.get(configuration);
获取hbase 操作类
Configuration configuration = HBaseConfiguration.create();
Connection connection = ConnectionFactory.createConnection(configuration);
Admin admin = connection.getAdmin();
方案二:将要连接的hadoop集群中 hdfs-site.xml core-site.xml hbse-site.xml (连接hbase用)复制到任意目录,加进配置中,
获取hdfs 文件系统
Configuration configuration = new Configuration();
configuration.addResource(new FileInputStream("D:\\soft\\apps\\hadoop-2.7.7\\etc\\hadoop\\core-site.xml"));//文件路径为本地路径
configuration.addResource(new FileInputStream("D:\\soft\\apps\\hadoop-2.7.7\\etc\\hadoop\\hdfs-site.xml"));
FileSystem fs = FileSystem.get(configuration);
获取hbase 操作类
Configuration configuration = HBaseConfiguration.create();
configuration.addResource(new FileInputStream("D:\\soft\\apps\\hadoop-2.7.7\\etc\\hadoop\\core-site.xml"));
configuration.addResource(new FileInputStream("D:\\soft\\apps\\hadoop-2.7.7\\etc\\hadoop\\hdfs-site.xml"));
configuration.addResource(new FileInputStream("D:\\soft\\apps\\hbase-1.4.9\\conf\\hbase-site.xml"));
Connection connection = ConnectionFactory.createConnection(configuration);
Admin admin = connection.getAdmin();
这里附上hbase java api操作代码 见 https://github.com/lbovery/hadoopdemo