Java操作远程Hbase详细步骤
来源:互联网 发布:邮政小包业务流程优化 编辑:程序博客网 时间:2024/06/03 20:02
本人最近在一个广告公司做点击率预估算法研究,由于数据源在Hbase中,故需要通过Java远程访问Hbase,在网上搜了很多相关程序,试了很久才跑通,过程中各种报错,心力交瘁,我总结下原因大致是对各种ip地址和端口号不理解,所以,就此叙述下详细的步骤(有说的不合理的地方,希望包含)。
首先,简述下访问远程Hbase数据库的过程,第一,需要查询远程服务器的ip地址,假设为“10.1.8.241”,这台机器是物理机,真实存在的,其次,将在这台物理机中的虚拟机上配置hadoop多结点集群(这一般是别人配置好的),结点分为两大类角色,一类是master,作为主节点,负责管理文件系统的命名空间和客户端对文件系统的访问操作;另一类是slave,作为从结点,负责管理存储的数据。这里最重要的是由于主节点和每个从结点都会有一个ip地址,在访问hbase的时候,千万别配置成结点的ip地址,因为你根本就访问不到,而是配置为服务器的ip地址,然后服务器会通过一个端口号和master结点建立链接,因此我们还需要配置一个端口号,假设为“2181”。这样就成功访问到了Hbase。
在弄清楚访问远程Hbase数据库的过程后,然后,需要修改“C:\Windows\System32\drivers\etc”下的hosts文件,用于建立与服务器之间的映射关系,即,添加一行“10.1.8.241master”,其中“10.1.8.241”为服务器的ip地址。
最后,就可以开始写代码了,首先,导入需要的jar包,这里我是直接从maven中导入:
<dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase-server</artifactId><version>0.96.1-hadoop2</version> </dependency>
下面是访问远程Hbase数据库,遍历并打印出Hbase数据库中所有表的Java代码以及程序跑通后的截图:
package Utils;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.HTableDescriptor;import org.apache.hadoop.hbase.client.HBaseAdmin;import java.io.IOException;import java.util.ArrayList;import java.util.List;public class HbaseTest { private HBaseAdmin admin = null; // 定义配置对象HBaseConfiguration private static Configuration configuration; public HbaseTest() throws Exception { configuration = HBaseConfiguration.create(); configuration.set("hbase.zookeeper.quorum","10.1.8.241"); //hbase 服务地址 configuration.set("hbase.zookeeper.property.clientPort","2181"); //端口号 admin = new HBaseAdmin(configuration); } // Hbase获取所有的表信息 public List getAllTables() { List<String> tables = null; if (admin != null) { try { HTableDescriptor[] allTable = admin.listTables(); if (allTable.length > 0) tables = new ArrayList<String>(); for (HTableDescriptor hTableDescriptor : allTable) { tables.add(hTableDescriptor.getNameAsString()); System.out.println(hTableDescriptor.getNameAsString()); } }catch (IOException e) { e.printStackTrace(); } } return tables; } public static void main(String[] args) throws Exception { HbaseTest hbaseTest = new HbaseTest(); hbaseTest.getAllTables(); }}
- Java操作远程Hbase详细步骤
- scala 操作远程hbase
- Hbase分布式详细安装步骤
- Hbase分布式详细安装步骤
- JAVA操作Hbase管理类HbaseManage基本详细操作
- JAVA操作Hbase管理类HbaseManage基本详细操作
- 远程操作步骤
- 通过API远程操作HBase
- python操作hbase 远程连接
- HBase入门-Java操作HBase
- JNI操作的详细步骤
- Oracle10g集群详细操作步骤
- cosi-corr操作详细步骤
- Openstack+Hadoop详细操作步骤
- LIBSVM回归详细操作步骤
- vnc远程控制服务器详细步骤~
- plsql远程连接数据库的详细步骤
- C#通过thrift连接hbase操作步骤
- 杭电acm 1370Biorhythms
- 百度股市通日k数据接口
- Toast自定义显示时间以及自定义显示位置
- Java语言程序设计(基础篇)课后答案
- 汪国新委员、郑桂兰董事长参加“保护黄河万里直播行动”北京启动
- Java操作远程Hbase详细步骤
- 恶意页面http://px.media-serving.com/或者http://goto.peak-adx.com 乱弹出来 在Mac OS X
- 中文乱码的产生原因
- 一秒学会安卓tcp基于netty4.x心跳,断线重连,状态监听
- app数据加密
- git远程仓库回滚
- python3 网络爬虫(三)利用post请求获取网页的动态加载数据
- HashMap存入相同key的两种不同的存储方式
- 面向对象和面向过程的区别及其优缺点