hbase数据读取优化_HBase 客户端怎么读取与写入数据以及如何优化写入读取

本文介绍了HBase的基本概念、数据模型和系统架构,强调了其在分布式存储中的优势与劣势。HBase的数据模型包括表、行、列族等,支持稀疏存储。文章还探讨了HBase的强一致性读写、自动分片和RegionServer故障恢复等功能,并解释了客户端如何通过元数据表定位RegionServer进行读写操作。同时,提到了HBase的优化点,如Block Cache和Bloom Filters。
摘要由CSDN通过智能技术生成

1. HBase 介绍

1.1 HBase 是什么

HBase 全称为 Hadoop Database,即 Hadoop 数据库,是一个高可靠、高性能、面向列族、可伸缩的分布式的存储系统。HBase 使用 HDFS 作为其文件存储系统,可以使用 Hadoop 的 MapReduce、Spark 及 Flink 来处理 HBase 中的海量数据,利用 ZooKeeper 作为其协调工具。可在廉价 PC Server 上搭建起大规模结构化存储集群。

1.2 HBase 的优势与劣势

传统数据库相比,HBase 的架构优势:

完全分布式(数据分片、故障自恢复、无限扩展)

数据存储在 HDFS 上,使得存储与计算分离

数据冗余

对机器要求不高

记录稀疏,对于特定的数据能够有效减少不必要数据的存储

HBase 的架构劣势:

单一 RowKey 固有的局限性决定了它不可能有效支持多条件查询

不支持直接 SQL 查询

2. HBase 数据模型

在 HBase 中,数据存储在有行列的表中。这就和关系型数据的属性有些重合。但是概念上有些不一样, HBase 将表视为多维映射(Map)。

HBase 数据模型概念:

HBase 数据模型概念上分为表、行、列、列族、列限定符、单元格、时间戳。

HBase 表由许多行组成,每行是由行键及一个或者多个列族组成;

列族是由许多列和对应的值组成,列在 HBase 中由列族和列限定符组成,使用 : 分隔;

单元格是将行、列族、列限定符、包含的值及时间戳的组合,代表这数据的版本;

每个值都会有一个时间戳,代表着这个数据的版本。

2.1 概念上的视图

下面是根据 BigTable 论文第二页稍加修改的例子。

有一个名为 internetInfo 的表,包含两行 ( com.apple.www and com.microsoft.www ) 以及三个列族:contents,anchor,peoples。在这个例子里面,第一行 com.apple.www,anchor 有两个列(anchor:css.com、anchor:look.ca),contents 仅有一列(contents:html)。

这个例子中行键为 com.apple.www 的包含 5 个版本的数据&#

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值