zoukankan      html  css  js  c++  java
  • HBase 笔记(1) 简介

    1、列式存储数据库

    不同于传统关系数据库的行式存储。其优势为:

    (1)、对于特定查询,不是所有值都是必需的,可减少IO。

    (2)、列的数据类型相似,有利于压缩,返回结果时降低带宽消耗。


    2、HBase 的Region 和RegionServer

    每一个region 只能由一台region server 加载,每一台region可以同时加载多个region。

    region 大小超过限制,将会在中间键将其拆分成两个大致相等的子region。Region 支持离线合并。

    每台RegionServer 加载Region数量约10-1000,每个region大小约1G-2G。


    3、HBase支持单行事务

    不支持跨行、跨表。


    4、HBase协处理器Coprocessor

    Coprocessor 可以在服务器的地址空间执行来自客户端的代码,此代码可以直接访问服务器本地的数据,用于实现轻量级批处理作业,或者使用表达式并给予各种操作来分析和汇总数据。


    5、HBase的实现

    HFile:数据的存储文件,存储经过排序的键值映射结构。HFile由连续的块组成,块的索引信息存储在文件的尾部

    HFile的默认大小为 64K


    数据更新过程:首先写在WAL (write-ahead log . 预写日志)中 ,然后再写入内存的memstore中 (已按照行健排序),最后移出内存到 HFile 中,HFile 会进行合并。数据从内存移出后,会丢弃对应已提交的日志。


    数据删除过程:给某行作一个删除标记,检索的时候跳过,而不是真正地删除。


    数据读取过程:从 HFile 和 memstore  读回并合并,不会用到WAL。


    数据恢复:若内存中数据在服务器崩溃前没有写入到磁盘,使用WAL进行恢复。


    HFile 的合并分为 minor合并 和 major合并。

    minor合并:将多个小文件重写为大文件,一个多路归并的过程。

    major合并:能扫描所有键值对,顺序重写数据,并略过做了删除标记、版本号过期、生存时间到期的数据


    6、ZooKeeper 作用

    a、为region server 协调分配region

    b、通过心跳,发现可用服务器,跟踪机器故障和网络分区

    c、确保只有一个HMaster运行


    7、HMaster 作用

    负载均衡,集群管理,元数据管理




  • 相关阅读:
    Union用法及说明:
    SQL用了Union后的排序问题
    10条PHP编程习惯助你找工作
    PHP性能分析工具xhprof的安装使用与注意事项
    11款数据分析工具(附体验网址)
    Linux下的库操作工具-nm、ar、ldd、ldconfig和ld.so
    ldd显示可执行模块的dependenc
    计算机图形学,三维框架设计
    dnat,snat
    百度识图API
  • 原文地址:https://www.cnblogs.com/leeeee/p/7276355.html
Copyright © 2011-2022 走看看