HBase数据结构(读书笔记 )

简介: 背景:     最近在做一些跟大数据相关的东西,涉及到数据的存储和分析,考虑各个方面,选择使用HBase进行存储,使用原生Java API进行数据分析,之后会陆续写一系列来说明最近做的东西,给像我这样未曾涉及过这个领域的人一点儿idea。


背景:


     最近在做一些跟大数据相关的东西,涉及到数据的存储和分析,考虑各个方面,选择使用HBase进行存储,使用原生Java API进行数据分析,之后会陆续写一系列来说明最近做的东西,给像我这样未曾涉及过这个领域的人一点儿idea。


引言:

     HBase以表的方式组织数据源,这一点跟关系型数据库时一样的,在我们的application里面,通过API/Thrift、或者各种SQL引擎,将数据存入库里面或者进行查询;Hbase的表由行(Row)和列(Column)共同构成,与关系型数据库不同的是,HBase有一个列族(Column Family)的概念,它将一列或者多列组织在一起,HBase的列必须属于某一个列族。


    行和列的交叉点称为单元格(Cell),单元格是版本化的。单元格的内容也就是列的值是不可分割的字节数组,以二进制的形式存储。HBase没有数据类型,任何列值都被转换成字符数组进行存储。HBase表中的行是通过行键(Rowkey)来进行区分的,行健也是用来唯一确定一行的标识,不同的行健嗲表不同的行,行健也是一段字节数组,不论是字符串还是数字,最终都会被转换成自己数组进行存储。HBase表中的行是按照RowKey排序的,排序方式采用字典顺序,所有表中的行都必须有RowKey。


逻辑模型


     HBase是一个类似GoogleBigTable的开源分布式数据库,它最基本的单位是列,一列或者多列组成行,行有行健,每一行的行健都是唯一的,相同的行健的插入操作被认为是对同一行的操作,也就是说如果做了两次写入操作,而行健是同一个,那么后面的操作可以认为是对改行的某些列的更新操作。

    列名是右列族前缀和修饰符连接而成,分隔符是应为冒号。

物理模型

     
    在逻辑模型中,表可以被看成一个稀疏的行的集合。但是在物理上,表是按照列分开存储的。HBase的列是按照列族分组的,HFile是面向列的,存放行的不同的列的物理文件,一个列族的数据存放在多个HFile中,最重要的是一个列族的数据会被同一个Region管理,物理上存放在一起。Region是管理HFile的一种机制。



     




 


    



相关实践学习
lindorm多模间数据无缝流转
展现了Lindorm多模融合能力——用kafka API写入,无缝流转在各引擎内进行数据存储和计算的实验。
云数据库HBase版使用教程
  相关的阿里云产品:云数据库 HBase 版 面向大数据领域的一站式NoSQL服务,100%兼容开源HBase并深度扩展,支持海量数据下的实时存储、高并发吞吐、轻SQL分析、全文检索、时序时空查询等能力,是风控、推荐、广告、物联网、车联网、Feeds流、数据大屏等场景首选数据库,是为淘宝、支付宝、菜鸟等众多阿里核心业务提供关键支撑的数据库。 了解产品详情: https://cn.aliyun.com/product/hbase   ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
存储 分布式计算 NoSQL
HBase的数据结构原理与使用
关键词:HBase Hadoop 大数据 大数据存储 数据开发 数据库
1241 0
HBase的数据结构原理与使用
|
存储 C语言 容器
《大话数据结构》读书笔记——第3章 线性表 顺序存储结构知识点及代码实现【带注释】
《大话数据结构》读书笔记——第3章 线性表 顺序存储结构知识点及代码实现【带注释】
155 0
《大话数据结构》读书笔记——第3章 线性表 顺序存储结构知识点及代码实现【带注释】
|
Java 测试技术 分布式数据库
从数据结构比较HBase的3种memstore实现方案
HBase的memstore目前存在3种实现:DefaultMemstore、CompactingMemstore、CCSMapMemStore,本文尝试从数据结构的角度对其进行比较。
1689 0
|
机器学习/深度学习 存储 算法
《大话数据结构》读书笔记——第2章 算法
《大话数据结构》读书笔记——第2章 算法
82 0
《大话数据结构》读书笔记——第2章 算法
|
存储 算法
《大话数据结构》读书笔记——第1章 数据结构绪论
《大话数据结构》读书笔记——第1章 数据结构绪论
81 0
《大话数据结构》读书笔记——第1章 数据结构绪论
|
存储 算法 索引
大话数据结构(读书笔记)(二)
是相互之间存在一种或多种特定关系的数据元素的集合。 说白了就是数据的集合、但是集合里面的数据之间存在特地的关系(这翻译得好像没说一样)
128 0
|
存储 机器学习/深度学习 算法
大话数据结构(读书笔记)(一)
是相互之间存在一种或多种特定关系的数据元素的集合。 说白了就是数据的集合、但是集合里面的数据之间存在特地的关系(这翻译得好像没说一样)
211 0
|
存储 算法 NoSQL
「从零单排HBase 09」HBase的那些数据结构和算法
「从零单排HBase 09」HBase的那些数据结构和算法
206 0
「从零单排HBase 09」HBase的那些数据结构和算法
|
存储 分布式数据库 数据库
HBase 数据结构 | 学习笔记
快速学习 HBase 数据结构。
155 0
|
存储 分布式数据库 Hbase
带你读《HBase原理与实践》之二:基础数据结构与算法
Apache HBase是基于Apache Hadoop构建的一个高可用、高性能、多版本的分布式NoSQL数据库,是Google BigTable的开源实现,通过在廉价服务器上搭建大规模结构化存储集群,提供海量数据高性能的随机读写能力。