linux部署分布式面向列的数据库HBase

HBase是建立在Hadoop文件系统之上的分布式面向列的数据库。它是一个开源项目,是横向扩展的。

HBase是一个数据模型,类似于谷歌的大表设计,可以提供快速随机访问海量结构化数据。它利用了Hadoop的文件系统(HDFS)提供的容错能力。它是Hadoop的生态系统,提供对数据的随机实时读/写访问,是Hadoop文件系统的一部分。

人们可以直接或通过HBase的存储HDFS数据。使用HBase在HDFS读取消费/随机访问数据。 HBase在Hadoop的文件系统之上,并提供了读写访问。

HBase下载地址http://www.apache.org/dyn/closer.cgi/hbase/

HBase-1.0.3安装

1.解压

cd /opt/
tar -zxvf hbase-1.0.3-bin.tar.gz

2.创建tmp文件夹作为hbase的数据目录

cd hbase-1.0.3/
mkdir tmp

3.修改配置文件hbase-site.xml,单机只需如下配置:

vim /opt/hbase-1.0.3/conf/hbase-site.xml

使用本地文件系统:

<configuration>
  <property>
    <name>hbase.rootdir</name>
    <value>file:///opt/hbase-1.0.3/tmp/hbase</value>
  </property>
</configuration>

或使用hdfs文件系统:

<configuration>
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://HM107:9000/hbase</value>
  </property>
</configuration>

使用hdfs文件系统时,必须配置主机名,不支持IP。如果配置IP,无法远程访问。我亲测过,最初使用的IP 192.168.1.100,远程无法访问,后来还是给服务器配置了主机名HM107,并在这里配置上主机名。

配置hbase.rootdir来指定Hbase将数据写到哪个目录。默认hbase.rootdir是指向/tmp/hbase-${user.name},会在重启后丢失数据(重启系统会清理/tmp),所以推荐修改该配置。

4.修改配置文件conf/hbase-env.sh 

vim /opt/hbase-1.0.3/conf/hbase-env.sh
export HBASE_MANAGES_ZK=true

说明:BASE_MANAGES_ZK 来切换zookeeper。如果未true,是让Hbase启动的时候同时也启动zookeeper。如果自己安装了zookeeper,则这里要配置成false。

我直接配置单机版,默认使用内部的zookeeper,未单独安装,所以配置成了true。

5.启动HBase之前,先确认hadoop已经启动

hadoop dfsadmin -report

6.HBase的启动和停止,集群的启动和停止则在Master节点上执行命令

bin/start-hbase.sh
bin/stop-hbase.sh



内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://sulao.cn/post/408.html