HBase分布式数据库

HBase   不适合大文件应用场景
**都可以存储---------->按0和1存储(字节byte)

非关系型数据库管理发展流程 
人工纸质----文件系统----关系型数据库----非关系型数据库
                                                     互补状态
非关系型数据库分类:
    列示:HBase
    文档:mongodb
    键值对:redis
    图形:no4j
HBase采用列存储    

HBase 高可靠(数据最终存储HDFS)        高性能(对海量数据访问----实时级别)  
           面向列(数据按照列族colum family进行存储)      可伸缩(列不够随时添加)
zookeeper (主备选举
                   主备倒换
                   微型数据库 用于存储meta表

读取快的原因 1.缩小读取范围 只读取与自己相关的数据
                     2.每个数据存储产生元数据   (记录数据存储的位置) 
                        查询数据可以借助元数据快速定位数据位置      元数据存储Zookeeper(meta)

表 ---region(存储的最小单元)----行键----列族----列----时间戳
                                                                                    (计算机当前时间------每个存储的数据都有)
region是由region Server服务进程来管理
核心(Store)
region进行Split操作时 将一个HFile文件真正分开到两个Region的过程发生在Compaction阶段
                                     列族(物理存储单元)             列族
region1    行键1     列colum  name                                    region1由一行或者多行来组成
region1    行键2     age                                                      region1达到10g自动分裂(按行划分)

region2    行键3     中空的不占用资源                                    region1
region2    行键4                                                                  region1


HBase中的版本----->不同时间写入到HBase中的数据     默认查询最新的一个版本

分裂过程   1.region划分    2.列族

HBase架构中的进程
client : 入口  接受用户的读写请求                  
HMaster: 负责管理 HR(包括负责均衡,HR故障后的任务迁移)    
               采用主备部署,单实例   不会接受过多的请求  不会出现单点瓶颈
               client --------> Zookeeper  <--------- HMaster
Hlog:负责记录HR日志----------当电脑死机保存数据===所以在HR前面   先写日志再写数据
HRegion Server(核心模块):负责维护分给自己的Region 
                                             相应用户读写请求
读取方式 
            Scan:通表扫描
            get:按条件进行查询

HBase过滤器
          布隆过滤器BloomFilter---精确判断数据不存在  如果判断数据存在 可能有误差
                                            用来优化一些随机读取的场景
           向HBase 写入数据就会计算这个数据的<hash>值
           用哈希值对区间长度去余             %4 如果余数1
           在对应位把0改成1 如果是1不改变         0100

HBase 的Region只记录起始键  没有结束键     下一个Region(行键值)起始键就是上一个的结束键

create '表名','列族1','列族2','列族3'.......
删除表之前要使表下线  disable '表名'
                                   drop '表名'
Hindex二级索引
多个表索引
多个列索引
基于部分列值的索引

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值