HBase介绍

HBase是参考google的bigtable的一个开源产品,建立在hdfs之上的一个提供高可靠性、高性能、列存储、可伸缩、实时读写的数据库系统。是一种介于nosql和RDBMs之间的一种数据库系统,仅支持通过rowkey和range进行数据的检索,主要存储非结构化数据和半结构化数据。
HBase和Hadoop一样,目标是通过横向扩展,添加普通机器来增加存储性能和计算性能。HBase特点:大(一个表可以有上亿行以及百万级的行)、面向行存储、稀疏(由于null不占用存储空间,所有表结果可以设计的非常稀疏)。

HBase组成结构
HBase使用Zookeeper进行集群节点管理,当然HBase自身集成了一个ZK系统,不过一般情况在实际生产环境中不使用。
HBase由master和regionserver两类节点(如果使用HBase自带的zk服务,那么还有HQuorumPeer进程)。Hbase支持提供backup master进行master备份。其中master节点负责和zk进行通信以及存储regionserver的相关位置信息,regionserver节点实现具体对数据的操作,最终数据存储在hdfs上。

HBase架构

RegionServer集群结构

 HBase逻辑存储结构

HBase物理存储结构

key

value

r1:a:url:t6

url2

r1:a:url:t3

url1

r1:a:url:t1

url0

r1:a:host:t7

host1

r1:a:host:t6

host0

r1:a:host:t4

host1

r1:a:host:t0

host0

r1:a:title:t5

title3

r1:a:title:t4

title2

r1:a:title:t2

title1

r1:a:title:t1

title0

 
   

HBase安装

1 下载


https://www.apache.org/dyn/closer.lua/hbase/2.1.3/hbase-2.1.3-bin.tar.gz


2 解压


tar -zxvf  hbase-2.1.3-bin.tar.gz


3 修改conf/hbase-env.sh


JAVA_HOME=/home/hadoop/bigdatasoftware/jdk1.8.0_161

port HBASE_MANAGES_ZK=false


4 修改hbase-site.xml


<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://hadoop-001:9000/hbase</value>
</property>

<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>

<!-- 0.98后的新变动,之前版本没有.port,默认端口为16000 -->
<property>
<name>hbase.master.port</name>
<value>16000</value>
</property>

<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop-001:2181,hadoop-002:2181,hadoop-003:2181</value>
</property>

<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/hadoop/bigdatasoftware/zookeeper-3.4.13/zkdata</value>
</property>
</configuration>


5 修改regionservers


hadoop-001

hadoop-002

hadoop-003


6 . 软连接 hadoop 配置文件到 hbase:(因为 hbase集群 是依赖于 hadoop集群 的)


ln -s /home/bigdatasoftware/hadoop-2.7.2/etc/hadoop/hdfs-site.xml /home/hadoop/bigdatasoftware/hbase-2.1.3/conf/hdfs-site.xml

ln -s /home/bigdatasoftware/hadoop-2.7.2/etc/hadoop/core-site.xml /home/hadoop/bigdatasoftware/hbase-2.1.3/conf/core-site.xml


7.发送hbase到hadoop-002,hadoop-003


scp -r ./hbase-2.1.3 hadoop@hadoop-002:/home/hadoop/bigdatasoftware/

scp -r ./hbase-2.1.3 hadoop@hadoop-003:/home/hadoop/bigdatasoftware/


7 启动验证


./bin/start-hbase.sh


浏览器访问hadoop-001:60010,如下图则配置成功

最新文章

  1. 转发 eclipse 取消javascript 验证
  2. .NET使用QRCodeEncoder生成二维码
  3. memcached一些整理
  4. ARM GCC 内嵌汇编手册
  5. WPF converter
  6. On-Heap与Off-Heap
  7. Salesforce 官方扫盲自学导航
  8. 【.net】未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序解决办法
  9. 详解vue组件的is特性:限制元素&amp;动态组件
  10. 一步步实现windows版ijkplayer系列文章之三——Ijkplayer播放器源码分析之音视频输出——音频篇
  11. L304 What Is Death?
  12. linux c学习笔记----线程创建与终止
  13. Cents os 7下如何安装bzip2
  14. Linux Home目录硬盘空间缩减
  15. vs中发布WebSever时启用HTTP-POST和HTTP-GET这两种协议
  16. php时间轴函数,很不错,记下了
  17. linux系统centOS在虚拟机下的自定义安装
  18. React:快速上手(5)——掌握Redux(2)
  19. 人工智能(AI)
  20. Android(java)学习笔记15:匿名内部类实现多线程

热门文章

  1. 某些浏览器没有canvas.toBlob 方法的解决方案
  2. AOP记录方法的执行时间
  3. 【Python】一些零散的练习
  4. this -- apply或call调用
  5. Linux文件和目录常用操作命令(40个)
  6. 微软Power BI 每月功能更新系列——6月Power BI 新功能学习
  7. SpringBatch Sample (五)(复合格式文件的读、多文件的写)
  8. Python之路,第五篇:Python入门与基础5
  9. MySql查询出来的值为 boolean类型的值
  10. Hive错误:User root is not allowed to impersonate anonymous