JAVA API连接Hbase操作

新手小白,第一篇帖子是有关Hadoop下如何实现Java API连接Hbase,如有错误欢迎指正讨论。

一、安装jdk、eclipse并配置环境变量
(一)安装jdk
从Oracle官网下载对应版本JDK,下载后查看安装包。

根据教程将jdk解压到/usr/lib/jvm文件夹时发现,/hadoop/lib/jvm下为openjdk,大多数LINUX发行版本里,内置或者通过软件源安装JDK的话,都是安装的openjdk,openjdk是jdk的开放原始码版本,以GPL协议的形式放出。 因此openjdk只包含最精简的JDK 并且在安装openjdk的机器上,输入“java -version”显示的也是openjdk。

可以采用将Linux中默认openjdk替换为默认jdk,也可以将安装包解压,我采用的是第二种方法:创建文件夹,并将安装包解压到该路径下,成功安装jdk

配置环境变量并测试:
采用全局设置方法,它是是所有用户的共用的环境变量
s u d o g e d i t   / . b a s h r c 打 开 编 辑 器 后 添 加 以 下 代 码 : e x p o r t J A V A H O M E = / u s r / l i b / j v m / e x p o r t J R E H O M E = sudo gedit ~/.bashrc 打开编辑器后添加以下代码: export JAVA_HOME=/usr/lib/jvm/ export JRE_HOME= sudogedit /.bashrcexportJAVAHOME=/usr/lib/jvm/exportJREHOME={JAVA_HOME}/jre
Export CLASSPATH=.:PATH
启动vim编辑器配置环境变量

具体配置如下图:

使配置的.bashrc生效并查看Java是否成功安装配置。

(二)安装eclipse
下载并解压eclipse的软件包,将其文件夹移动到/opt目录下并建立jre软连接;添加eclipse的桌面图标,然后进入eclipse文件夹,运行eclipse执行文件并赋予可执行权限:sudo chmod u+x eclipse.desktop;最后将其复制到桌面通过图标启动eclipse。
对文件的配置如下:

二、安装Hbase
在Linux本地,在目录./usr/local新建一个hbase目录,用于存放所需文件。下载并解压安装包hbase-1.1.2-bin.tar.gz至路径 /usr/local/hbase,将/usr/local/hbase-1.1.2,重命名为hbase_home

添加HBase的环境变量。使用gedit(或vi/vim)打开用户环境变量文件。
sudo vi ~/.bashrc
在环境变量文件末尾位置,追加Hbase的bin目录路径相关配置,并保存退出
查看添加配置hbase安装的路径在/usr/local/hbase_home
里边事先配置了jdk,hadoop的路径的了
export JAVA_HOME=/usr/local/java/jdk1.8.0_144
export PATH=$PATH:/usr/local/hadoop/bin:/usr/local/hadoop/sbin:/usr/local/hbase_home/bin
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_VERSION=“2.7.7”

首先用单机模式 首先去配置它的hbase-site.xml文件:sudo gedit hbase-site.xml
第一次打开它的时候其configuration是空的,需加入如下代码

hbase.rootdir
file:///home/hadoop_file/myhbase

hbase.master.info.port60010
配置完后保存退出,在hbase_home的bin目录下,启动脚本start-hbase.sh:sudo ./start-hbase.sh,启动hbase数据库成功后 ,使用jps看到HMaster进程并且可以通过HBase Java API操作HBase。

三、实现Java API连接HBase 进行文件建立、读写、删除等基本操作。
在ubuntu中的eclipse中编程:
首先在eclipse中新建项目如:HBaseDemo,把HBase安装目录下的conf文件夹中的hbase-site.xml复制到项目的src包下,再接着将在Hbase安装目录下的lib文件下的包导入到项目中去,然后可以开始编程实现HBase中的Java API。

进行基本操作代码如下:

package com.zsk.hbase.api;

import org.apache.hadoop.hbase.HColumnDescriptor;
import org.apache.hadoop.hbase.HTableDescriptor;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.*;
import org.apache.hadoop.hbase.filter.FilterList;
import org.apache.hadoop.hbase.util.Bytes;

import java.util.Arrays;
import java.util.List;

public class HBaseUtil {
   
    /**
     * 创建表
     * @param tableName 创建表的表名称
     * @param cfs 列簇的集合
     * @return
     */
    public static boolean createTable(String tableName, String[] cfs) {
   
        try (HBaseAdmin admin = (HBaseAdmin) HBaseConn.getHBaseConn().getAdmin()) {
   
            if (admin.
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值