赞
踩
HBase是一个非关系型的面向列(column-oriented)的分布式数据库,基于Java语言实现。HBase是Hadoop开源项目的组成部分,如果需要实时地随机访问超大规模数据集,就可以使用HBase这一Hadoop的重要数据库组件。
HBase特别适合存储大规模稀疏数据集,即大规模数据中仅包含很小的有用信息。例如,从20亿条记录中找到前50个最大元素。HBase中的表可以直接作为Hadoop计算任务的输入或输出,并可以直接由Java API或REST API访问。
本次实训我们就来安装HBase数据库,并对HBase进行简单的上手使用。
HBase的安装也分为三种,单机版、伪分布式、分布式;我们先来安装单机版。
单机版安装
首先我们去官网下载好HBase的安装包;
接下来,将压缩包解压缩到你想安装的目录(安装包在平台已经下载好了,在/opt目录下,无需你再进行下载,我们统一将HBase解压到/app目录下):
mkdir /app
cd /opt
tar -zxvf hbase-2.1.1-bin.tar.gz -C /app
安装单机版很简单,我们只需要配置JDK的路径即可,我们将JDK的路径配置到conf/下的hbase-env.sh
中。
我们先输入echo $JAVA_HOME
来复制JAVA_HOME的路径,以方便之后的配置:
接着我们编辑HBaseconf目录下的hbase-env.sh文件,将其中的JAVA_HOME指向到你Java的安装目录,最后保存设置:
然后编辑hbase-site.xml文件,在标签中添加如下内容:
<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的共享目录,用来持久化Hbase。URL需要是’完全正确’的,还要包含文件系统的scheme。例如,要表示hdfs中的 /hbase目录,namenode 运行在namenode.example.org的9090端口。则需要设置为hdfs://namenode.example.org:9000 /hbase。默认情况下Hbase是写到/tmp的。不改这个配置,数据会在重启的时候丢失
hbase.zookeeper.property.dataDir:ZooKeeper的zoo.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来初步的体验它的功能了:
首先需要启动Hadoop,输入命令start-dfs.sh来启动Hadoop,输入jps
查看是否启动成功,接着我们输入start-hbase.sh
来启动HBase,同样输入jps查看是否启动成功,出现了HMaster即表示启动成功了。
启动成功之后,咱们就可以对Hbase进行一些基本的操作了。
在之后的实训中,我们可以将会实现伪分布式与分布式HBase数据库的安装。
请注意,因为Hadoop和HBase非常消耗资源,所以你在长时间没使用命令行后台会回收资源,如果你想保持环境不被注销,请在弹出延时窗口时点击延时,并且保持操作命令行,这样可以保持你的环境一直持续。
实践测评
任务描述
本关任务:在HBase中创建表。
相关知识
为了完成本关任务,你需要掌握:如何使用HBase shell指令创建表。
Hbase shell操作
启动HBase之后,我们输入hbase shell进入到Hbase shell命令行窗口:
在这里我们输入hbase shell
会启动一个加入了一些Hbase特有命令的JRuby JRB 解释器,输入help然后按回车键可以查看已分组的shell环境的命令列表。
现在,我们来创建一个简单的表。
要新建一个表,首先必须要给它起个名字,并为其定义模式,一个表的模式包含表的属性和列族的列表。
例如:我们想要新建一个名为test的表,使其中包含一个名为data的列,表和列族属性都为默认值,则可以使用如下命令:
创建完毕之后我们可以输入list来查看表是否创建成功:
实践测评:
任务描述
本关任务:向HBase的表中添加数据。
相关知识
为了完成本关任务,你需要掌握:
1.如何使用HBase shell命令添加数据、
2.如何使用命令删除表。
添加数据
我们来给上一关创建的test表的列data添加一些数据:
从上面例子我们可以看出,使用put命令
可以用来添加数据,使用get命令
可以获取数据。
当然我们肯定还会有一个需求:查看所有的数据。
输入scan
命令就可以查看所有的数据了。
删除数据、删除表
我们经常会添加错数据,想要删除然后重新添加应该怎么做呢?
删除整行数据:
deleteall 'test','row1'
指令:deleteall 表名,行名称即可删除正行数据。
有时候我们还想将创建好的表删除,怎么做呢?
为了移除test这个表,首先我们要把它设为禁用,然后删除。
可以发现删除表需要两个步骤:
disable 表名
drop 表名
接着我们ctrl + c或者 输入exit退出Hbase shell命令行。
实践测评
Ending!
更多课程知识学习记录随后再来吧!
就酱,嘎啦!
注:
人生在勤,不索何获。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。