Hbase介绍及应用

官网的介绍:Use Apache HBase™ when you need random, realtime read/write access to your Big Data. This project's goal is the hosting of very large tables -- billions of rows X millions of columns. 大意是Hbase用于随机、实时的读写大数据(一点解释:HDFS是基于分布式文件系统,无法满足实时的读写访问),这个项目的目的是存储非常大的表--几十亿行几百万列(真的很大了)。其实是山寨谷歌的Bigtable(具体可参考文章 Bigtable: A Distributed Storage System for Structured Data)

与传统关系型数据库区别:(这里的的传统关系型数据库是指Orcal、MySQL)传统关系型数据库每张表的结构是固定的,表中每条记录的信息被映射到相应表结构下,这种数据库很擅长处理表间的关联关系。而Hbase是基于分布式存储的非关系型数据库,它是通过column family(列簇)对表进行管理,每个列簇可包含多个键值对。


Hbase安装

1.修改hbase-env.sh

vi hbase-env.sh ->修改JAVA_HOME 环境变量,修改 HBASE_MANAGES_ZK=false  --不使用Hbase提供的zookeeper集群

2.配置hbase-site.xml

<configuration>
<property>
<name>hbase.rootdir</name>    <!-- hbase的分布式存储依赖hdfs,配置hdfs -->
<value>hdfs://ns1/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>sempplsl-02:2181,sempplsl-03:2181,sempplsl-04:2181</value>   <!-- 配置zookeeper环境 -->
</property>
</configuration>

3.配置regionservers

vi regionservers,将localhost删除,替换成hadoop集群中的datanode节点。这里datanode节点为:

sempplsl-02
sempplsl-03
sempplsl-04

4.hdfs环境配置

由于在hbase-site.xml中配置了hdfs集群的nameservice,但是hbase集群不认识 hdfs://ns1/hbase,它不能通过ns1找到该nameservice下包含namenode,这些信息在hadoop的配置文件 hdfs-site.xml  和 core-site.xml中。因此将这两个配置文件从hadoop安装文件中 scp到hbase中的conf文件夹。

5.集群搭建

将上述配置好的安装文件 scp到集群中的各个节点中,包括regionserver节点和HMaster节点(HMaster节点一般有两台,形成主备)

6.启动集群

安装文件bin目录,执行  ./start-hbase.sh

执行该指令的节点为HMaster节点,但是两台HMaster仅启动了一台,还需要到另一个节点手动启动,指令为:

<pre name="code" class="html">./hbase-daemon.sh start master


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值