【大数据】分布式数据库HBase下载安装教程

目录

1.下载安装

2.配置

2.1.启动hadoop

2.2.单机模式

2.3.伪分布式集群


1.下载安装

HBase和Hadoop之间有版本对应关系,之前用的hadoop是3.1.3,选择的HBase的版本是2.2.X。

下载地址:

Index of /dist/hbase

配置环境变量:

之前在PATH中已经配置了JAVA的环境变量,直接用:隔开,追加一个hbase的环境变量

复制代码
export JAVA_HOME=/jdk/jdk8
export PATH=$JAVA_HOME/bin:$PATH:/hbase/hbase-2.2.2/bin
export CLASSPATH="."

刷新环境变量:

复制代码
 source /etc/profile

查看是否生效:

复制代码
hbase version

2.配置

HBASE有三种模式:

  • 单机模式

  • 伪分布式模式

  • 分布式模式

分布式模式太吃机器性能了,学习来说的话伪分布式模式就够了。本文将会讲解单机模式和伪分布式模式的配置。

运行HBase的前置环境:

  • JDK

  • 对应版本的Hadoop

  • SSH

以上环境在我们之前安装hadoop的时候就已经安装过了,此处不再赘述。

2.1.启动hadoop

我用的Windows的wsl版本的ubuntu,所以没有用systemctl命令,而是用service命令来直接启动服务。

hbase依赖于hdfs,所以要先启动hdfs,hdfs依赖于ssh,所以最先启动ssh。

复制代码
service start ssh
./sbin/start-dfs.sh

2.2.单机模式

在HBase的单机模式下,所有HBase组件(包括HMaster、HRegionServer以及ZooKeeper)都运行在一个JVM进程中,且不依赖于Hadoop的HDFS,而是直接使用本地文件系统来存储数据。

HBase的配置文件所在位置:

复制代码
vi /hbase/hbase-2.2.2/conf/hbase-env.sh

配置如下内容:

复制代码
export JAVA_HOME=/jdk/jdk8/ #设置JDK路径
export HBASE_MANAGES_ZK=true #HBASE本身自带一个zookeeper,设置使用自带的zookeeper,而不是外界的

配置

复制代码
 vi /hbase/hbase-2.2.2/conf/hbase-site.xml

设置rootdir,用来存储hbase的数据,不设置数据的存储路径的话,每次重启hbase都会丢数据。

复制代码
<configuration>
        <property>
                <name>hbase.rootdir</name>
                <value>file:///usr/local/hbase/hbase-tmp</value>
        </property>
</configuration>

启动HBase:

复制代码
 ./bin/start-hbase.sh

进入交互式界面:

复制代码
 ./bin/hbase shell

在交互式界面可以指向hbase的命令:

list指令查看所有,exit命令退出交互式界面,stop-hbase.sh关闭hbase:

2.3.伪分布式集群

伪分布式模式模拟了分布式环境,但实际上所有HBase组件(包括HMaster、多个HRegionServer以及ZooKeeper)仍然运行在同一台物理机器上,但是每个组件都在各自的JVM进程中运行。此外,伪分布式模式会使用Hadoop的HDFS作为底层存储,这意味着数据会被分布在本地文件系统的不同目录中,模拟了分布式存储的效果。

配置hbase-env.sh

复制代码
export HBASE_CLASSPATH=/hadoop/hadoop-3.1.3/etc/hadoop/ #配置hadoop的配置文件路径,挂载到hdfs上

配置hbase-site.xml:

复制代码
<configuration>
        <property>
                <name>hbase.rootdir</name>
                <value>hdfs://localhost:9000/hbase</value>
        </property>
        #开启分布式模式
        <property>
                <name>hbase.cluster.distributed</name>
                <value>true</value>
        </property>
        <property>
                <name>hbase.unsafe.stream.capability.enforce</name>
                <value>false</value>
        </property>
</configuration>

再启动可以看到:

HBase相关组件启动了

相关推荐
运维之美@14 分钟前
oracle数据备份和导入
数据库·oracle
无妄啊______20 分钟前
mysql笔记10(高级部分--跟数据库管理有关)
数据库·笔记·mysql
周周写不完的代码3 小时前
Redis-持久化机制
数据库·redis·缓存
战神刘玉栋3 小时前
《程序猿之Redis缓存实战 · Redis 与数据库一致性》
数据库·redis·缓存
追寻上飞5 小时前
【常读常悟】《大数据之路-阿里巴巴大数据实践》一书读书摘要
大数据·智能算法
jnrjian7 小时前
Oracle datafile 数目限制是多少
数据库·oracle
卡布达ovo7 小时前
MongoDB入门
数据库·mongodb
Dnui_King8 小时前
Oracle SQL语句没有过滤条件,究竟是否会走索引??
数据库·sql·oracle
bug菌¹8 小时前
滚雪球学Oracle[3.4讲]:事务控制与锁管理
数据库·oracle·事务·事务控制·锁管理
MarkHD8 小时前
Flink集群部署
大数据·flink