0


云计算与大数据实验七 HBase的安装与基本操作

一、实验目的

  1. 回顾Hadoop和Zookeeper安装与配置
  2. 掌握HBase安装与配置
  3. 理解HBase工作原理
  4. 掌握HBase表的基本操作

二、实验内容

  1. HBase安装与配置
  2. 使用HBase shell指令创建表
  3. 使用HBase shell命令添加/删除数据
  4. 使用命令删除表

三、实验步骤

(一)HBase安装与配置

HBase安装

HBase

的安装也分为三种,单机版、伪分布式、分布式;我们先来安装单机版。

单机版安装

首先我们去官网下载好

HBase

的安装包;

接下来,将压缩包解压缩到你想安装的目录:

mkdir /app
cd /opt
ulimit -f 1000000
tar -zxvf hbase-2.1.1-bin.tar.gz -C /app

安装单机版很简单,我们只需要配置

JDK

的路径即可,我们将

JDK

的路径配置到

conf/

下的

hbase-env.sh

中。

我们先输入

echo $JAVA_HOME

来复制

JAVA_HOME

的路径,以方便之后的配置:

接着我们编辑

HBase conf

目录下的

hbase-env.sh

文件,将其中的

JAVA_HOME

指向到你

Java

的安装目录,最后保存设置:

vim /app/hbase-2.1.1/conf/hbase-env.sh

然后编辑

hbase-site.xml

文件,在

<configuration>

标签中添加如下内容:

<configuration>
  <property>
       <name>hbase.rootdir</name>
       <value>file:///root/data/hbase/data</value>
  </property>
  <property>
       <name>hbase.zookeeper.property.dataDir</name>
       <value>/root/data/hbase/zookeeper</value>
  </property>
  <property>    
  <name>hbase.unsafe.stream.capability.enforce</name>
        <value>false</value>
  </property>
</configuration>

以上各参数的解释:

  • hbase.rootdir:这个目录是region server的共享目录,用来持久化HbaseURL需要是'完全正确'的,还要包含文件系统的scheme。例如,要表示hdfs中的 /hbase目录,namenode运行在namenode.example.org9090端口。则需要设置为hdfs://namenode.example.org:9000 /hbase。默认情况下Hbase是写到/tmp的。不改这个配置,数据会在重启的时候丢失;
  • hbase.zookeeper.property.dataDirZooKeeperzoo.conf中的配置。快照的存储位置,默认是:${hbase.tmp.dir}/zookeeper
  • hbase.unsafe.stream.capability.enforce:控制HBase是否检查流功能(hflush / hsync),如果您打算在rootdir表示的LocalFileSystem上运行,那就禁用此选项。

配置好了之后我们就可以启动

HBase

了,在启动之前我们可以将

Hbase

bin

目录配置到

/etc/profile

中,这样更方便我们以后操作。 在

etc/profile

的文件末尾添加如下内容:

# SET HBASE_enviroment
HBASE_HOME=/app/hbase-2.1.1
export PATH=$PATH:$HBASE_HOME/bin
HBASE_HOME

为你自己本机

Hbase

的地址。

不要忘了,

source /etc/profile

使刚刚的配置生效。

接下来我们就可以运行

HBase

来初步的体验它的功能了:

在命令行输入

start-hbase.sh

来启动

HBase

,接着输入

jps

查看是否启动成功,出现了

HMaster

进程即表示启动成功了。

启动成功之后,咱们就可以对

Hbase

进行一些基本的操作了。

根据上述步骤安装配置好

HBase

数据库,并启动成功。

请注意,

HBase

非常消耗资源,所以你在长时间没使用命令行后台会回收资源,如果你想保持环境不被注销,请在弹出延时窗口时点击延时,并且保持操作命令行,这样可以保持你的环境一直持续。

相关代码:

1.    #创建 app 目录
2.    mkdir /app
3.    #进入 /opt 目录下
4.    cd /opt
5.    #解压 Hbase 压缩包
6.    tar -zxvf hbase-2.1.1-bin.tar.gz -C /app
7.    #编辑hbase-env.sh配置文件
8.    vi /app/hbase-2.1.1/conf/hbase-env.sh
9.    
10.    #进入后配置配置
11.    export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_111
12.    
13.    #编辑hbase-site.xml配置文件
14.    vi /app/hbase-2.1.1/conf/hbase-site.xml
15.    
16.    <configuration>
17.      <property>
18.           <name>hbase.rootdir</name>
19.           <value>file:///root/data/hbase/data</value>
20.      </property>
21.      <property>
22.           <name>hbase.zookeeper.property.dataDir</name>
23.           <value>/root/data/hbase/zookeeper</value>
24.      </property>
25.      <property>     
26.      <name>hbase.unsafe.stream.capability.enforce</name>
27.            <value>false</value>
28.      </property>
29.    </configuration>
30.    
31.    
32.    
33.    #配置Hbase环境变量
34.    vi /etc/profile
35.    
36.    HBASE_HOME=/app/hbase-2.1.1
37.    export PATH=$PATH:$HBASE_HOME/bin
38.    
39.    #是环境变量生效
40.    source /etc/profile
41.    
42.    #启动HBase(环境变量配置好后)
43.    start-hbase.sh

(二)使用HBase shell指令创建表

Hbase shell操作

启动HBase之后,我们输入

hbase shell

进入到

Hbase shell

命令行窗口:

在这里我们输入

hbase shell

会启动一个加入了一些

Hbase

特有命令的

JRuby JRB

解释器,输入

help

然后按回车键可以查看已分组的

shell

环境的命令列表。

现在,我们来创建一个简单的表。

要新建一个表,首先必须要给它起个名字,并为其定义模式,一个表的模式包含表的属性和列族的列表。

例如:我们想要新建一个名为

test

的表,使其中包含一个名为

data

的列,表和列族属性都为默认值,则可以使用如下命令:

创建完毕之后我们可以输入

list

来查看表是否创建成功:

编程要求

然后继续在

HBase

中创建两张表,表名分别为:

dept

,

emp

,列都为:

data

相关代码:

1.    # 启动 HBase
2.    start-hbase.sh
3.    # 进入 hbase shell
4.    hbase shell
5.    create 'test','data'
6.    create 'dept','data'
7.    create 'emp','data'
8.    
9.    
10.    # 退出
11.    exit

(三)使用HBase shell命令添加/删除数据

添加数据

我们来给上一步创建的

test

表的列

data

添加一些数据:

从上面例子我们可以看出,使用

put

命令可以用来添加数据,使用

get

命令可以获取数据。

当然我们肯定还会有一个需求:查看所有的数据。

输入

scan

命令就可以查看所有的数据了。

删除数据、删除表

我们经常会添加错数据,想要删除然后重新添加应该怎么做呢?

删除整行数据:

deleteall 'test','row1'

指令:

deleteall 
表名,行名称

即可删除整行数据。

有时候我们还想将创建好的表删除,怎么做呢?

为了移除

test

这个表,首先我们要把它设为禁用,然后在删除:

可以发现删除表需要两个步骤:

  1. disable 表名
  2. drop 表名

接着我们

ctrl + c

或者 输入

exit

退出

HBase shell

命令行。

编程要求

HBase

中创建表

mytable

,列为

data

,并在列族

data

中添加三行数据:

  • 行号分别为:row1row2row3
  • 列名分别为:data:1data:2data:3
  • 值分别为:zhangsanzhangsanfengzhangwuji

预期输出:

row1column=data:1,value=zhangsan
row2column=data:2,value=zhangsanfeng
row3column=data:3,value=zhangwuji
3row(s)
row1column=data:1,value=zhangsan
row2column=data:2,value=zhangsanfeng
row3column=data:3,value=zhangwuji
3row(s)
相关代码:
1.    # 启动 HBase
2.    start-hbase.sh
3.    # 进入 hbase shell
4.    hbase shell
5.    create 'mytable','data'
6.    put 'mytable','row1','data:1','zhangsan'
7.    put 'mytable','row2','data:2','zhangsanfeng'
8.    put 'mytable','row3','data:3','zhangwuji'
9.    
10.    
11.    
12.    # 退出
13.    exit

四、实验心得

会使用HBase shell指令创建表

会使用HBase shell命令添加/删除数据

会使用命令删除表


本文转载自: https://blog.csdn.net/qq_64314976/article/details/128508804
版权归原作者 Meteor.792 所有, 如有侵权,请联系我们删除。

“云计算与大数据实验七 HBase的安装与基本操作”的评论:

还没有评论