• 01-06-Hbase基础定义


    Hbase定义:

    Hbase是一种分布式,可扩展,支持海量数据存储的NoSQL数据库。HBase是一个分布式的、面向列的开源数据库。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。

    Hbase数据模型:

    Hbase的数据模型同关系型数据库类似,数据存储在一张表中,有行有列。但是底层物理存储结构(k-v)。更像一个多维度的map。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JH38CDpz-1669554924432)(.\png\image-20210224162146458.png)]

    BigTable。

    多个列组成列族。一个列族下可以有很多列(宽表的切分)。

    Rowkey唯一,有序,字典序,自带的。

    高表:数据行多,宽表:列表。(垂直切分,水平切分。)

    Region:一张表的切片。(行和列组成。个人理解)

    store:存储。

    Hbase物理存储结构

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6nEQZdG5-1669554924433)(.\png\image-20210224181707662.png)]

    数据模型:

    1)Name Space:命名空间,类似于关系型数据库的database,每个命名空间下有多个表。Habse有两个自带的命名空间,分别是hbase和default。hbase内置,系统的一些表。default是用户默认使用的命名空间。

    2)Region(主要定义列族):表的切片。类似于关系型数据库的表概念。高表是才切。Hbase定义表时只需要声明列族即可,不需要声明具体的列。列是动态增加的。

    3)Row:Hbase中每行数据有Rowkey和多个Column组成。Rowkey是按照字典顺序存储的。并且查询数据时只能根据Rowkey进行查找。

    4)Column:有Column Family(列族)和Column Qualifier(列限定符)进行限定。如:info:name,info:age。创建表时只需要列族,列限定不用预先定义。

    5)Time Stamp:时间戳,用于标识不同的版本。每条数据写入是,可以自己指定时间戳,不指定系统会自动加。

    6)Cell:由{rowkey,column Family:column Qualifier,time stamp}唯一确定的单元,Cell中的数据是没有类型的。全部已字节码的形式存储。

    Hbase基本架构:

    Cell中的数据是没有类型的。全部已字节码的形式存储。

    Hbase基本架构:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zwdXzMUk-1669554924434)(.\png\image-20210225171234996.png)]

  • 相关阅读:
    【复杂句的逻辑练习题】that 省略
    Java 代码性能基准测试
    C#简单晶圆wafermapping显示示范demo
    【Mysql】——索引的深度理解
    golang性能分析工具pprof介绍
    今年阿里云双十一服务器优惠价格讨论_看看大家怎么说?
    在 AWS Marketplace 上订阅 EMQX Cloud 按量计费版
    Apollo 应用与源码分析:CyberRT-protobuf
    MS17010利用方式
    vue实现无感刷新token
  • 原文地址:https://blog.csdn.net/qq_37171694/article/details/128070046