Hbase 搭建与入门


[资料】(https://github.com/jast90/awesome-learning/issues/1))

Hbase 使用场景和成功案例

  • Hbase是一种数据库:Hadoop分布式数据库

  • HBase 应用场景
    -1、用户画像
    比如大型的视频网站,电商平台产生的用户点击行为、浏览行为等等存储在HBase中为后续的智能推荐做数据支撑。
    2、消息/订单存储
    这个场景主要应用在电商平台,因为HBase提供了一个低延时、高并发的访问能力
    3、对象存储
    这里的对象存储实际是中等对象存储,是对HDFS存储文件的一个缓冲过度,因为如果我们大量的1M或2M这种小文件直接存储在HDFS上,会对NAMENODE造成元数据维护的压力,所以在HBase中可以很好的做过度合并后在持久化到HDFS上。HBase提供了中等对现象的存储能力,中等对象的大小范围在100k至10M之间。
    4、时序数据
    这里的时序数据是指随着时间而变化的数据,比如速度的展示,天气、温度、风速、车流量等等
    5、Cube分析(KyLin)
    通过KyLin将Hive或kafka中的数据,来构建Cube,这些Cube会存储在HBase中,以供其他的应用或其他的系统做实时查询或实时展示。
    6、Feeds流
    这个场景主要是应用在抖音、或其他小视频系统中,可以把Feeds流理解为一种内容聚合器,它可以帮助用户实时的获取最新的订阅源内容。

HBASE 搭建(三个节点都装)

hbase 安装包

# 上传至node01并解压
cd /export/softwares
tar -zxvf hbase-2.1.0-bin.tar.gz -C ../servers/
cd ../servers/
# 删除官方帮助文档(减少分发时间)
rm -rf docs/
# 修改配置文件

cd /export/servers/hbase-2.1.0/conf

# hbase-site.sh
- 显示行号
: set nu
- 28
export JAVA_HOME=/export/servers/jdk1.8.0_261
- 125 去掉注释(表示禁止使用HBase自带的Zookeeper)
export HBASE_MANAGES_ZK=false

# hbase-site.xml

<configuration>
<!-- 指定HBase数据在HDFS上的存储路径 -->
	<property>
	  <name>hbase.rootdir</name>
	  <value>hdfs://node01:8020/hbase</value>
	</property>
<!-- 设置hbase模式为集群模式 -->
	<property>
	  <name>hbase.cluster.distributed</name>
	  <value>true</value>
	</property>
<!-- Master绑定的端口,包括backup-master -->
	<property>
	  <name>hbase.master.port</name>
	  <value>16000</value>
	</property>
<!-- 指定HBase数据在HDFS上的存储路径 -->
	<property>
	  <name>hbase.zookeeper.quorum</name>
	  <value>node01:2181,node02:2181,node03:2181</value>
	</property>
<!-- 设置ZK数据存放目录 -->
	<property>
	  <name>hbase.zookeeper.property.dataDir</name>
	  <value>/export/servers/zookeeper-3.4.9/zkdatas</value>
	</property>
<!-- 属性为所有新建的列指定一个全局的默认的最大版本数 -->
	<property>
	  <name>hbase.column.max.version</name>
	  <value>3</value>
	</property>
</configuration>
# 修改第三个配置文件 regionservers
cd /export/servers/hbase-2.1.0/conf
 vim regionservers
改为:
node01
node02
node03
# 创建 backup-masters配置文件,实现 HMaster 的高可用
cd /export/servers/hbase-2.1.0/conf
vim backup-masters
写入
node02
# 软件包分发
scp -r hbase-2.1.0/ node02:$PWD
scp -r hbase-2.1.0/ node03:$PWD
# 三台机器创建软连接(拷贝原文件,并随着原文件的变动而变动)
ln -s /export/servers/hadoop-2.7.5/etc/hadoop/core-site.xml /export/servers/hbase-2.1.0/conf/core-site.xml
ln -s /export/servers/hadoop-2.7.5/etc/hadoop/hdfs-site.xml /export/servers/hbase-2.1.0/conf/hdfs-site.xml
# home环境变量配置
vim /etc/profile

export HBASE_HOME=/export/servers/hbase-2.1.0
export PATH=:$HBASE_HOME/bin:$PATH

source /etc/profile
# hbase 集群启动

cd /export/servers/hbase-2.1.0/bin
start-hbase.sh

页面访问
http://node01:16010/master-status

![](https://img2020.cnblogs.com/blog/1044397/202008/1044397-20200803122437486-987339975.png)

#
初晨暖阳,夜落星河。 少年披梦,远方有歌。 红黄之上,春夏晚风。 闲肆游走,人群熙攘。
原文地址:https://www.cnblogs.com/alidata/p/13429783.html