本周都没怎么更新内容,实在是抱歉,最近生病了加上状态不太好,一直都没精力干活,不过现在已经调整过来了,见谅,让大家久等了。
本期大数据编程技术基础实验的内容是HBase的部署,内容比较简单,但会用到之前实验的东西,所以大家在学习这些知识前,要懂得如何去部署这些大数据组件,并熟练的掌握linux命令。
简介:HBase是基于Hadoop的开源分布式数据库,它以Google的BigTable为原型,设计并实现了具有高可靠性、高性能、列存储、可伸缩、实时读写的分布式数据库系统,它是基于列而不是基于行的模式,适合存储非结构化数据。
体系结构:HBase是一个分布式的数据库,使用Zookeeper管理集群,使用HDFS作为底层存储,它由HMaster和HRegionServer组成,遵从主从服务器架构。HBase将逻辑上的表划分成多个数据块即HRegion,存储在HRegionServer中。HMaster负责管理所有的HRegionServer,它本身并不存储任何数据,而只是存储数据到HRegionServer的映射关系(元数据)。HBase的基本架构如图所示:
本实验主要演示HBase的安装部署过程,因HBase依赖于HDFS和Zookeeper,所以该实验需要分为四个步骤。
首先,配置SSH无密钥登录。
其次,安装Hadoop集群。
然后,安装Zookeeper集群。
最后,修改HBase配置文件。
前三个步骤我就不再演示了,而且我们学习的大数据平台支持一键搭建,所以前面的步骤也不用再进行,如果需要自己进行配置环境的话,请移步到我之前的大数据技术基础实验,里面有详细过程:
往期的实验博客都在这个专栏里面:大数据技术基础
具体操作如下:
将HBase 安装包hbase.1.1.2.tar.gz解压到/usr/cstor目录,并将hbase.1.1.2目录改名为hbase,且所属用户改成root:root。
[root@master ~]#tar -zxvf hbase.1.1.2.tar.gz -c /usr/cstor/hbase
[root@master ~]#mv /usr/cstor/hbase.1.1.2 /usr/cstor/hbase
[root@master ~]#chown -R root:root /usr/cstor/hbase
以上操作学校平台已经事先做好了。
我们直接进入到hbase目录下:
进入解压目录下,配置conf目录下的/usr/cstor/hbase/conf/hbase-env.sh文件,设置如下:
Java安装路径:
export JAVA_HOME=/usr/local/jdk1.7.0_79 (需根据实际情况指定)
export HBASE_MANAGES_ZK=false
配置conf目录下的hbase-site.xml文件,设置如下:
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:8020/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>slave1,slave2,master</value>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>/usr/cstor/hbase/data/tmp</value>
</property>
</configuration>
配置conf目录下的regionservers文件,设置如下:
配置完成后,将hbase目录传输到集群的其它节点:
scp -r /usr/cstor/hbase root@slave1:/usr/cstor
scp -r /usr/cstor/hbase root@slave2:/usr/cstor
接着,启动HBase,并简单验证HBase,如下:
在主节点master进入hbase解压目录的bin目录,启动HBase服务进程(已启动Zookeeper):
[root@master ~]#cd /usr/cstor/hbase/bin
[root@master ~]#./start-hbase.sh
通过以下命令进入HBase shell界面:
./hbase shell
在shell里创建表:
create 'testhbase' , 'f1'
查询所有表名:
list
查看表结构信息:
describe 'testhbase'
在shell里插入数据:
put 'testhbase', '001', 'f1:name', 'aaa'
在shell里查询:
scan 'testhbase'
删除表,先disable再drop:
disable 'testhbase'
drop 'testhbase'
HBase安装成功后,可以通过访问HBase WEB页面(http://master:16010) 来查看HBase集群的一些基本情况,网址中的master为你的master节点IP。
本期实验就到这里结束,另外需要注意的是,如果你在最后进入HBase shell界面或者后面创建表的时候出现了错误,请务必检查一下服务器的其他组件是否正常运行,需要注意的就是master节点是否正常,如果解决不了的话,可以尝试重新搭建环境。
最后,关于状态的事,我会利用周末的时间好好的调整一下自己的状态的,从下周开始就要继续正常学习生活了,人生并不是处处顺风,所以我们需要抗住压力,勇往直前,决不放弃,相信自己并不差,这句话送给我,也送给你们。
谢谢你们看完,我会继续加油的。