HBase 在集群中对表(ddl)和数据(dml)的相应操作

HBase 在集群中对表(ddl)和数据(dml)的相应操作

HBase特点

  1. 要开启hbase之前必须先开启hdfs和zookeeper(关闭将start改为stop即可)

  2. 启动hdfs:my_hadoop.sh start

  3. 启动zookeeper:zk.sh start

  4. 启动hbase:bin/start-hbase.sh

  5. 表(ddl):增加:create,修改:alter,删除:drop,查看所有:list,查看版本号:describe

  6. 数据(dml):增加:put,修改:put,删除:delete,查看:scan

HBase在集群上的操作

1.HBase安装及配置

(1)点击XShell,进入到 cd /opt/software目录下

[mnlg@XJ202 ~]$ cd /opt/software/

(2)把hbase-2.3.6-bin.tar.gz压缩包上传到Shell的 cd /opt/software目录下

(3)在 XJ202 解压 HBase安装包到/opt/module/目录下

[mnlg@XJ202 software]$ tar -zxvf hbase-2.3.6-bin.tar.gz -C /opt/module/

(4)修改名称hbase-2.3.6-bin为hbase-2.3.6

[mnlg@XJ202 module]$ mv hbase-2.3.6-bin/ hbase-2.3.6

(5)进入hbase中的conf目录修改regionservers文件

XJ202
XJ203
XJ204

(6)修改hbase-env.sh 文件

[mnlg@XJ202 hbase-2.3.6]$ vim hbase-env.sh
(1)# The java implementation to use. Java 1.8+ required.
   export JAVA_HOME=/opt/module/jdk1.8.0_212
(2)# Tell HBase whether it should manage it's own instance of ZooKeeper or not.
   export HBASE_MANAGES_ZK=false

(7)修改hbase-site.xml 文件

[mnlg@XJ202 hbase-2.3.6]$ vim hbase-site.xml
<property>
<name>hbase.rootdir</name>
<value>hdfs://XJ202:8020/HBase</value>
</property>

<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>

<property>
<name>hbase.master.port</name>
<value>16000</value>
</property>

<property>
<name>hbase.zookeeper.quorum</name>
<value>XJ202,XJ203,XJ204</value>
</property>

<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/opt/module/zookeeper-3.5.7/zkdata</value>
</property>

(8)创建core-site.xml 和 hdfs-site.xml 配置文件软连接

[mnlg@XJ202 conf]$ ln -s /opt/module/hadoop-3.1.3/etc/hadoop/core-site.xml /opt/module/hbase-2.3.6/conf/core-site.xml
[mnlg@XJ202 conf]$ ll    
[mnlg@XJ202 conf]$ ln -s /opt/module/hadoop-3.1.3/etc/hadoop/hdfs-site.xml /opt/module/hbase-2.3.6/conf/hdfs-site.xml

2.HBase 在集群中对表(ddl)和数据(dml)的相应操作

(1)对表(ddl)的创建,修改,查看,删除操作
[mnlg@XJ202 ~]$ cd /opt/module/hbase-2.3.6/             //进入到hbase目录下
[mnlg@XJ202 hbase-2.3.6]$ bin/start-hbase.sh    		//启动hbase
[mnlg@XJ202 hbase-2.3.6]$ bin/hbase shell               //进入hbase命令界面
hbase(main):018:0> create 'student','info1'				//创建student表
hbase(main):018:0> describe 'student'					//查看student表的信息(如版本号)

hbase(main):018:0> create 't1','info1','info2'			//创建t1表
hbase(main):018:0> list									//查看有哪些表格
hbase(main):018:0> describe 't1'						//查看t1表的信息(如版本号)
hbase(main):018:0> help 'alter'							//查看'alter'帮助信息

//修改版本号为‘3’    
hbase(main):018:0> alter 't1',{NAME => 'info1',VERSIONS => '3'}		
hbase(main):018:0> describe 't1'						//查看t1表的信息(如版本号)
  
hbase(main):018:0> alter 't1',{NAME => 'info3'}			//修改t1的列族为info3
hbase(main):018:0> describe 't1'

//若出现表正在使用无法删除,需要先disable ’t1’之后再删除表
hbase(main):018:0> disable 't1'
hbase(main):018:0> drop 't1'  							//删除t1表
hbase(main):018:0> list    								//查看t1表是否还存在
(2)对数据(dml)的增删改查操作
hbase(main):018:0> create 't1','info1'					  //创建t1表
hbase(main):018:0> scan 't1'							  //查看t1表中数据信息(此时为0)
hbase(main):018:0> help 'put'    						  //查看'put'帮助信息
hbase(main):018:0> put 't1','1001','info1:name','tom'
hbase(main):018:0> put 't1','1001','info1:age','18' 
hbase(main):018:0> put 't1','1001','info1:gander','male' //以上三行是往表格添加数据
hbase(main):018:0> scan 't1'							 //查看t1表中数据信息
hbase(main):018:0> put 't1','1001','info1:name','wx'	 //对数据进行修改'tom'->'wx'
hbase(main):018:0> scan 't1'

//删除表里面某一列的信息,会保留之前的日志信息,不会彻底删除修改之前的东西。
hbase(main):018:0> delete 't1','1001','info1:name'       //删除之后name变为'tom'
hbase(main):018:0> help 'deleteall'						 //查看'deleteall'帮助信息
    
hbase(main):018:0> put 't1','1001','info1:name','wx'	//对数据进行修改'tom'->'wx'
hbase(main):018:0> deleteall 't1','1001','info1:name'	//彻底删除某一列的所有记录
hbase(main):018:0> scan 't1'							//查看t1表中数据信息

hbase(main):018:0> help 'truncate'   					//查看'truncate'帮助信息
hbase(main):018:0> truncate 't1'						//删除表里面的所有数据信息
hbase(main):018:0> scan 't1'
					
//统计表中有几个rowkey,rowkey一样,只能说明为一个值里面的不同列
hbase(main):018:0> count 't1'		

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>