HBase基础和伪分布式安装配置

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq1010885678/article/details/43796441 一、HBase(NoSQL)的数据模型1.1 表(table),是存储管理数据的。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq1010885678/article/details/43796441

一、HBase(NoSQL)的数据模型

1.1 表(table),是存储管理数据的。

1.2 行键(row key),类似于MySQL中的主键,行键是HBase表天然自带的,创建表时不需要指定

1.3 列族(column family),列的集合。

一张表中有多个行健,一个行健读取出来的是一条记录,列族和MySQL中的列差不多,但是它是列的集合

HBase中列族是需要在定义表时指定的,列是在插入记录时动态增加的。

HBase表中的数据存储在本地磁盘上的时候,每个列族单独一个作为文件存储。


上图表示HBase中表的一行

和关系型数据库不同的是

关系型数据库一行中每一个列的值只能是一个,如:

UserId UserName

1 JChubby

而在NoSql中,一行里面某一个列的值可能是多个的,如上图,或者:

UserId UserName

1 JChubby

Looky

其中省略了timestamp时间戳这一列,但是在NoSql中读取这一行数据的出来时,数据应该是和关系型数据库读出来的是差不多的

时间戳列起到了标识列数据版本的作用,当没有指定时间戳的时候默认取的是最新的列数据,具体请参照上图

1.4 存储的数据都是字节数组。



二、HBase的物理模型

2.1 HBase是适合海量数据(如20PB)的秒级简单查询的数据库。

2.2 HBase表中的记录,按照行键进行拆分, 拆分成一个个的region。

如:在一个有1W行健的表中,每2K个行健拆分成一个region分别存储在不同的节点中,每个region记录着行健的起始位置和最终位置[startkey,endkey]

许多个region存储在region server(单独的物理机器)中的。

这样,对表的操作转化为对多台region server的并行查询。

HBase中有两种特殊的表,分别是-ROOT和.META

.META中记录着各个region的起止行健,当.META中的记录很大时,又会按照相同的规则拆分成不同的region记录中-ROOT表中


如上图所示,当要查询数据时,先找-ROOT表中记录的region信息,找到对应的.META表中的region,在到实际的节点上的region查询数据



三、HBase的体系结构

3.1 HBase是主从式结构,HMaster、HRegionServer


四、HBase伪分布安装

HBase的安装是是建立在hadoop和zookeeper集群之上的

安装时确保hadoop和zookeeper集群已安装成功并启动

4.1 解压缩、重命名、设置环境变量

把hbase-0.94.2-security.tar.gz复制到/home/hadoop

解压hbase-0.94.2-security.tar.gz与重命名

#cd /home/hadoop

#tar -zxvf hbase-0.94.2-security.tar.gz

#mv hbase-0.94.2-security hbase

修改/etc/profile文件。

#vi /etc/profile

增加 

export HBASE_HOME=/home/hadoop/hbase

修改 

export PATH=$JAVA_HOME/bin:$PATH:$HADOOP_HOME/bin:$HBASE_HOME/bin

保存退出

#source /etc/profile

4.2 修改$HBASE_HOME/conf/hbase-env.sh,修改内容如下:

export JAVA_HOME=/usr/java/jdk1.6.0_45

export HBASE_MANAGES_ZK=true

第一个配置java环境变量

第二个配置在本机器上的HBase可以自己启动zookeeper和使用

4.2 修改$HBASE_HOME/conf/hbase-site.xml,修改内容如下:

<property>

 <name>hbase.rootdir</name>

 <value>hdfs://master:9000/hbase</value>

</property>

<property>

 <name>hbase.cluster.distributed</name>

 <value>true</value>

</property>

<property>

 <name>hbase.zookeeper.quorum</name>

 <value>master</value>

</property>

<property>

 <name>dfs.replication</name>

 <value>1</value>

</property>

hbase.rootdir配置在hdfs文件系统上hbase存储的路径

hbase.cluster.distributed配置是否是分布式的

hbase.zookeeper.quorum配置zookeeper在哪个节点上

dfs.replication配置副本个数

注意:hbase.rootdir的主机和端口号与hadoop的配置文件core-site.xml的fs.default.name的主机和端口号一致

4.3 (可选)文件regionservers的内容为master,该文件记录regionserver的各个节点的主机名,因为是伪分布式安装,所只写一个,localhost或者主机名都可以

4.4 启动hbase,在bin目录下执行命令start-hbase.sh

******启动hbase之前,确保hadoop是运行正常的,并且可以写入文件*******

4.5 验证是否安装成功:

(1)执行jps,发现新增加了3个java进程,分别是HMaster、HRegionServer、HQuorumPeer

(2)使用浏览器访问http://master:60010,可以进入和hadoop类似的web管理页面

相关实践学习
云数据库HBase版使用教程
&nbsp; 相关的阿里云产品:云数据库 HBase 版 面向大数据领域的一站式NoSQL服务,100%兼容开源HBase并深度扩展,支持海量数据下的实时存储、高并发吞吐、轻SQL分析、全文检索、时序时空查询等能力,是风控、推荐、广告、物联网、车联网、Feeds流、数据大屏等场景首选数据库,是为淘宝、支付宝、菜鸟等众多阿里核心业务提供关键支撑的数据库。 了解产品详情:&nbsp;https://cn.aliyun.com/product/hbase &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
4月前
|
分布式计算 Hadoop Java
百度搜索:蓝易云【HBase分布式安装配置教程。】
以上是一个简要的HBase分布式安装和配置教程。需要注意的是,HBase的配置和部署涉及更多的细节和参数设置,取决于你的特定环境和需求。建议你参考HBase官方文档或其他可靠资源,以获得更详细和全面的指导。
36 6
|
11月前
|
存储 分布式计算 Ubuntu
|
存储 分布式计算 Hadoop
Linux/Hbase2.2.2安装教程_单机/伪分布式配置
Linux/Hbase2.2.2安装教程_单机/伪分布式配置
679 0
Linux/Hbase2.2.2安装教程_单机/伪分布式配置
|
XML 负载均衡 Java
HBase 伪分布式、命令_4 | 学习笔记
快速学习 HBase 伪分布式、命令_4
164 0
HBase 伪分布式、命令_4 | 学习笔记
|
SQL 缓存 大数据
HBase伪分布式、命令_3 | 学习笔记
快速学习 HBase伪分布式、命令_3
115 0
|
大数据 Shell 分布式数据库
基于mac构建大数据伪分布式学习环境(六)-部署HBase
本文主要讲解列式数据库HBase的单机部署方式与配置
107 0
|
Java Shell 分布式数据库
搭建HBase的本地模式、伪分布式、全分布式和HA模式
搭建HBase的本地模式、伪分布式、全分布式和HA模式
212 0
|
Shell 分布式数据库 开发者
HBase 安装配置 &amp;启动 | 学习笔记
快速学习 HBase 安装配置 &amp;启动 。
108 0
|
存储 SQL 分布式计算
Hbase伪分布式模式部署
HBase是一个分布式、面向列的开源数据库,是Apache Hadoop项目的子项目,适用于非结构化数据存储的数据库。在Hadoop家族中,很多产品为HBase提供服务
308 0
|
分布式计算 Hadoop Java
HBase 在单机模式 和伪分布模式下的安装
HBase的安装 本篇介绍两种HBase的安装方式:本地安装方式和伪分布式安装方式。 安装的前提条件是已经成功安装了hadoop,而且hadoop的版本要和hbase的版本相匹配。 我将要安装的hbase是hbase-0.90.4版本,需要的hadoop是hadoop-0.20.2版本。 1.单机安装 将下载的hbase-0.90.4解压到相应的目录,如/home/zhangxin/hbase-0.90.4 修改hbase-0.90.4下的conf目录下的配置文件hbase-env.sh 首先,修改hbase-env.sh中的如下属性: export JAVA_HOME=/home/zhang
231 0