赞
踩
随着大数据时代的来临,mysql已经无法满足人们的需要,海量数据存储到达了瓶颈,hbase应运而生。
提示:以下是本篇文章正文内容,下面案例可供参考
HBase – Hadoop Database,是一个高 可靠 性、高性能、面向列、可伸缩的 分布式存储系统 ,利用HBase技术可在廉价PC Server上搭建起大规模 结构 化 存储 集群。
已安装Linux虚拟机,并已下载安装Java和Hadoop。 本文所使用版本为Hadoop3.1.4。
- HBase的下载地址为:
下载完毕后,将源文件解压缩至/opt/module
代码如下(示例):
- #打开文件夹目录
- cd /opt/software
- tar -zxvf hbase-2.4.14-bin.tar.gz -C /opt/module
配置环境变量,在你的java和Hadoop的配置环境变量的文件中加入
- #HBSE
- export HBASE_HOME=/opt/module/hbase-2.4.14
- export PATH=$PATH:$HBASE_HOME/bin
执行代码:
- source /etc/profile
- hbase version
会出现如下:
这些日志是告诉你Hadoop和Hbase有着相同的lib,也就是Hadoop和Hbase都有一个类,它不知道该用哪一个。有些人可能会告诉你是因为版本不匹配问题,我也差点上当了。
我们可以打开$HBASE_HOME/conf/hbase_env.sh,滑到最下面
- # Tell HBase whether it should include Hadoop's lib when start up,
- # the default value is false,means that includes Hadoop's lib.
- export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP="true"
- #意思大概是默认是包括Hadoop的lib,我们改成true就行
问题解决了:
然后在$HBASE_HOME/conf/hbase_env.sh进行如下配置
- export JAVA_HOME=/opt/module/java
- export HBASE_CLASSPATH=/opt/module/hbase-2.4.14/conf
-
- # Tell HBase whether it should manage it's own instance of ZooKeeper or not.
- # 如果你没有下zookeeper可以用hbase自带的并让它自己管理
- export HBASE_MANAGES_ZK=true
-
接着在 hbase-site.xml进行如下配置(前三行是默认的,有分布式需求的话,可以把hbase.cluster.distributed改成true):
- <property>
- <name>hbase.cluster.distributed</name>
- <value>false</value>
- </property>
- <property>
- <name>hbase.tmp.dir</name>
- <value>./tmp</value>
- </property>
- <property>
- <name>hbase.unsafe.stream.capability.enforce</name>
- <value>false</value>
- </property>
-
- <!--指定hbase管理页面的端口号-->
- <property>
- <name>hbase.master.info.port</name>
- <value>16010</value>
- </property>
- <!--指定hdfs的地址-->
- <property>
- <name>hbase.rootdir</name>
- <value>hdfs://sunshuo:8020/hbase</value>
- </property>

注意Hadoop配置中的core-site文件,不要写错了hdfs的地址:
- <!-- 指定 NameNode 的地址 -->
- <property>
- <name>fs.defaultFS</name>
- <value>hdfs://sunshuo:8020</value>
- </property>
下一步软链接过来Hadoop的core-site.xml和hdfs-site.xml文件(看博文说hbase需要用到,也可以不做这一步试试。)
vim regionservers,你可以把localhost改成了你自己的个性化名字
软链接格式 ln -s 目标文件 当前文件
例:ln -s /opt/module/hadoop/etc/hadoop/hdfs-site.xml hdfs-site.xml
启动Hadoop和hbase(start-hbase.sh)
jps如下:
16010端口:
进入命令为
hbase shell
创建表的命令:
- create ‘<table name>’,’<column family>’
- //更多请阅读:https://www.yiibai.com/hbase/hbase_create_table.html
-
- create 'test','info','money'
查看表的命令:
list
添加数据的命令:
- put ’<table name>’,’row1’,’<colfamily:colname>’,’<value>’
- //更多请阅读:https://www.yiibai.com/hbase/hbase_create_data.html
-
- put 'test','1','info:name','a'
查看数据命令:
scan 'test'
这是我最后的实验结果,主要参考HBase教程 (yiibai.com):
总结
以上就是今天要讲的内容,本文仅仅简单介绍了hbase的安装和使用,是Hadoop生态的一部分。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。