hbase windows 搭建,hbase版本用的1.2.0,出现一个问题报java.lang.NoClassDefFoundError: org/apache/htrace/core/HTraceConfiguration,初学hbase,这里就先应用为主,本来是想用最新的2.2.0,但是缺少jar包等等很多问题,能力有限,先熟悉应用。

1.由于Hbase构建在Hadoop HDFS之上,因此Hbase需要Hadoop的支持。

首先下载Hadoop支持文件:https://pan.baidu.com/s/1E8Ct25PqiyAmIhQbP7fUWA    密码:ztw7

下载完成后解压,并配置环境变量:

变量名:HADOOP_HOME,变量值:Hadoop的文件夹地址(即刚刚解压文件夹的地址,例如:D:hadoophadoop-common-2.2.0-bin-master)。

并在Path中添加:%HADOOP_HOME%in (不要忘记用分号隔开)

2.下载hbase,下载链接:https://pan.baidu.com/s/19beAaW-Xl-WaXghaBevZrw  密码:kjsr

附官网链接,选择需要的版本下载即可(本文推荐1.2.0):http://archive.apache.org/dist/hbase/

下载完成后,解压。

解压完成后,找到hbase-1.2.0文件夹下的conf文件夹,然后找到“hbase-env.cmd”文件,编辑此文件,添加:

set HBASE_MANAGES_ZK=false
set JAVA_HOME=D:javajdk1.8.0_77
set HBASE_CLASSPATH=D:hbasehbase-1.2.0conf

其中set JAVA_HOME项将值设为你的jdk安装目录。set HBASE_CLASSPATH项将值设为你的hbase的conf文件夹地址。

然后,进行下一项配置,还是在conf文件夹中,找到“hbase-site.xml”文件,编辑此文件,在configuration标签内添加如下配置:

注意,以上配置的“······hbase-1.2.0请修改为你的hbase-1.2.0目录地址。

3.测试搭建结果:

打开cmd,进入hbase目录的bin目录,然后输入“start-hbase”如图:

稍等片刻,在自动出现的另一个cmd窗口可见如下信息:

此时,此窗口不要关闭。在之前的cmd窗口(进入bin目录的那个)输入“hbase shell”命令,出现如下图所示操作指令,则配置成功:

我们建一个表试一下,输入“  create ‘表名’,‘列族名’  ”指令,如下图:

 

我们再来看一下我们刚刚建的表,输入“list”指令,如下图:

可以看到我们刚刚建的表“test_table”

至此,Hbase搭建成功。

可参考这个地址配置,https://blog.csdn.net/m0_38075425/article/details/81281960

======================================

hbase一些基本操作命令

exists 'test_table'

省略模式建立列族

hbase> create 't1', 'f1', 'f2', 'f3'

建好表后,查看表结构:describe 

清空表:truncate ‘lmj_test’ 删除表:

 删除表:分两步,首先disable 'lmj_test',然后drop 'lmj_test'

创建一个新的表,往表里面添加数据,查看表数据

create 'student','info','address'
put 'student','1','info:age','20'
put 'student','1','info:name','wang'
put 'student','1','info:class','1'
put 'student','1','address:city','zhengzhou'
put 'student','1','address:area','High-tech zone'
put 'student','2','info:age','21'
put 'student','2','info:name','yang'
put 'student','2','info:class','1'
put 'student','2','address:city','beijing'
put 'student','2','address:area','CBD'
put 'student','3','info:age','22'
put 'student','3','info:name','zhao'
put 'student','3','info:class','2'
put 'student','3','address:city','shanghai'
put 'student','3','address:area','pudong'
scan 'student'

也可以在bin底下添加一个student.txt文件

 首先执行,创建表,增加数据操作,执行脚本 /bin/hbase shell ./student.txt,然后查看内容 scan ‘student'

修改操作 也是用put命令,就是重新添加内容把,把以前的内容覆盖。

put 'student','1','info:age','18'

删除单元格,某个列族的属性 delete 'student','1','info:name'

这里在稍微解释下hbase的几个概念

表是行的集合。--->表 student   行-----> 1

行是列族的集合。---> 行 -----> 1  列族 -----> info

列族是列的集合。列族------> info  列---> name,age,class 列族--->address  列------> area,city 

列是键值对的集合。age=18,name=hjj city=zhengzhou

删除整行

deleteall 'student','1'

 

查询

查询单行 get  'student','2'

指定列族 ---->COLUMN 大写

get 'student', '2', {COLUMN => 'info'}

指定列名

get 'student', '2', {COLUMN => 'info:age'}

使用scan,指定startrow

 scan 'student',{COLUMN=>['info:age','address:area'],LIMIT=>10,STARTROW=>'2'}

修改表结构:先disable后enable

 alter 't1', {NAME => 'f1'}, {NAME => 'f2', METHOD => 'delete'}

例如:修改表test1的cf的TTL为180天

disable 'test1'
alter 'test1',{NAME=>'body',TTL=>'15552000'},{NAME=>'meta', TTL=>'15552000'}
enable 'test1'

新增列族
disable 'users'
alter 'users' ,'cfInfo','u'
enable 'users'
 

今天先总结到这里,先学习命令行,后面再来看spring如何整合hbase进行开发

原文地址:https://www.cnblogs.com/hejj-bk/p/11301713.html