`

7、Hbase基本框架

 
阅读更多
   HBase是一个构建在HDFS上的分布式列存储系统;
   HBase是Apache Hadoop生态系统中的重要一员,主要用于海量结构化数据存储;
   从逻辑上讲, HBase将数据按照表、行和列进行存储。


Hbase与HDFS对比:
   两者都具有良好的容错性和扩展性,都可以扩展到成百上千个节点;
   HDFS适合批处理场景:
   不支持数据随机查找
   不适合增量数据处理
   不支持数据更新

Hbase表的特点:
  大:一个表可以有数十亿行,上百万列;
  无模式:每行都有一个可排序的主键和任意多的列,列可以根据需要动态的增加,同一张表中不同的行可以有截然不同的列;
  面向列:面向列(族)的存储和权限控制,列(族)独立检索;
  稀疏:对于空( null)的列,并不占用存储空间,表可以设计的非常稀疏;
  数据多版本:每个单元中的数据可以有多个版本,默认情况下版本号自动分配,是单元格插入时的时间戳;
  数据类型单一: Hbase中的数据都是字符串,没有类型。

行存储与列存储:


HBase是基于Google BigTable模型开发的,典型的key/value系统;






Hbase支持的操作,所有操作均是基于rowkey的;
   支持CRUD( Create、 Read、 Update和Delete)和Scan;
   单行操作:
   Put
   Get
   Scan
   多行操作:
   Scan
   MultiPut
   没有内置join操作,可使用MapReduce解决。

Hbase物理模型:
每个column family存储在HDFS上的一个单独文件中;
Key 和 Version number在每个 column family中均由一份;
空值不会被保存。
HBase 为每个值维护了多级索引,即:
<rowkey, column family, columnname, timestamp>


Region是HBase中分布式存储和负载均衡的最小单元。不同Region分布到不同RegionServer上;


Region虽然是分布式存储的最小单元,但并不是存储的最小单元。Region由一个或者多个Store组成,每个store保存一个columns family;每个Strore又由一个memStore和0至多个StoreFile组成;memStore存储在内存中, StoreFile存储在HDFS上。



HBase架构:


Client
  包含访问HBase的接口,并维护cache来加快对HBase的访问
Zookeeper 
  保证任何时候,集群中只有一个master
  存贮所有Region的寻址入口
  实时监控Region server的上线和下线信息。并实时通知给Master
  存储HBase的schema和table元数据
Master
  为Region server分配region
  负责Region server的负载均衡
  发现失效的Region server并重新分配其上的region
  管理用户对table的增删改查操作
Region Server
  Region server维护region,处理对这些region的IO请求
  Region server负责切分在运行过程中变得过大的region


HBase容错性:
Master容错: Zookeeper重新选择一个新的Master
  无Master过程中,数据读取仍照常进行;
  无master过程中, region切分、负载均衡等无法进行;
RegionServer容错:定时向Zookeeper汇报心跳,如果一旦时间内未出现心跳
  Master将该RegionServer上的Region重新分配到其他RegionServer上;
  失效服务器上“预写”日志由主服务器进行分割并派送给新的
RegionServer
  Zookeeper容错: Zookeeper是一个可靠地服务
  一般配置3或5个Zookeeper实例。

Region定位:

.ROOT-
  表包含.META.表所在的region列表,该表只会有一个Region;
  Zookeeper中记录了 -ROOT-表的location。
.META.
  表包含所有的用户空间region列表,以及RegionServer的服务器地址。
  • 大小: 113.2 KB
  • 大小: 283.2 KB
  • 大小: 51.4 KB
  • 大小: 189.3 KB
  • 大小: 118.2 KB
  • 大小: 272 KB
  • 大小: 102.9 KB
  • 大小: 64.7 KB
  • 大小: 35.8 KB
  • 大小: 170.4 KB
  • 大小: 160.3 KB
  • 大小: 59 KB
分享到:
评论

相关推荐

    hbase企业应用开发实战

    本书强调HBase在企业的实际应用,立足于企业的实际生产环境,旨在帮助企业切实解决大数据技术如何落地...理论维度,则深入分析了HBase、框架设计、模式设计和基本原理。可谓是理论与实践完美结合,深度与广度兼备! [1]

    HBase企业应用开发实战-高清

    系统介绍了Hbase的功能使用、框架设计、基本原理和高级特性。详细讲解了使用hbase设计大型数据应用系统的实践方法和技巧;深刻总结系统运维、监控和性能调优的最佳实践

    HBase企业应用开发实战

    , 系统介绍HBase的功能使用、框架设计、基本原理和高级特性;详细讲解使用HBase设计大型数据应用系统的实践方法和技巧;深刻总结系统运维、监控和性能调优的最佳实践。, 本书强调HBase在企业的实际应用,立足于企业...

    hbaseSecondaryIndex:hbase二级索引实现

    hbaseSecondaryIndex是一个hbase二级索引的实现,基于solr+hbase coprocessor框架为hbase提供索引表支持。 此工程可打包为一个hbase的插件,通用方便。 这篇文档的目的是为了向您介绍hbaseSecondaryIndex的基本使用...

    HBase核心模块介绍及基本概念介绍(HBase模式设计)

    Hadoop框架中的HDFS分布式文件系统为HBase提供了可靠的底层存储支持。Hadoop框架中的MapReduce为HBase提供了高性能的计算能力。Client是整个HBase系统的入口客户端使用RPC协议与HMaster和RegionServer进行通信对于...

    HBase超详细介绍

    HBase是ApacheHadoop中的一个子项目,Hbase依托于Hadoop的HDFS作为最基本存储基础单元,通过使用hadoop的DFS工具就可以看到这些这些数据 存储文件夹的结构,还可以通过Map/Reduce的框架(算法)对HBase进行操作,如右侧...

    新版全面系统完整的Hbase视频教程

    是每一个大数据都应该掌握的基本框架。在本课程中,主要讲述了HBase详细的架构原理及特点、HBase内部各个角色的详细介绍、安装配置、HBase的Shell操作、新旧版本的读写数据详细流程、HBase的API操作、使用MapReduce...

    通俗易懂的Hbase升级版教程(含配套资料)

    是每一个大数据都应该掌握的基本框架。在本课程中,主要讲述了HBase详细的架构原理及特点、HBase内部各个角色的详细介绍、安装配置、HBase的Shell操作、新旧版本的读写数据详细流程、HBase的API操作、使用MapReduce...

    Hbase入门篇

    HBase是Apache Hadoop中的一个子项目,Hbase依托于Hadoop的HDFS作为最基本存储基础单元,通过使用hadoop的DFS工具就可以看到这些这些数据 存储文件夹的结构,还可以通过Map/Reduce的框架(算法)对HBase进行操作.

    hbase-manager:HBaseManager,一款简约大气的HBase表管理系统

    系统目前的功能已经很丰富了,包含多集群切换、命名空间管理、HBase表的新增、修改和删除,以及HBase表的标签管理,快照管理和基本的数据查询、增加和删除等功能。 同时,不同于HBase表的ACL,借助于若依框架本身的...

    大数据视频_HBase视频教程

    是每一个大数据都应该掌握的基本框架。在本课程中,主要讲述了HBase详细的架构原理及特点、HBase内部各个角色的详细介绍、安装配置、HBase的Shell操作、新旧版本的读写数据详细流程、HBase的API操作、使用MapReduce...

    Hbase架构与原理

    HBase是ApacheHadoop中的一个子项目,Hbase依托于Hadoop的HDFS作为最基本存储基础单元,通过使用hadoop的DFS工具就可以看到这些这些数据存储文件夹的结构,还可以通过Map/Reduce的框架(算法)对HBase进行操作HBase是...

    HBase入门篇

    HBase是ApacheHadoop中的一个子项目,Hbase依托于Hadoop的HDFS作为最基本存储基础单元,通过使用hadoop的DFS工具就可以看到这些这些数据 存储文件夹的结构,还可以通过Map/Reduce的框架(算法)对HBase进行操作,如右侧...

    spark大作业.zip

    使用Spark框架进行网站用户购物分析 目的 1、熟悉Linux系统、MySQL、Spark、HBase、Hive、Sqoop、R、Eclipse、IntelliJ Idea等系统和软件的安装和使用; 2、了解大数据处理的基本流程; 3、熟悉数据预处理方法; 4、...

    Storm流计算项目:1号店电商实时数据分析系统-11.基于HBase的Dao基类和实现类开发一.pptx

    06.Kafka基本操作和最优设置 07.Kafka Java API 简单开发测试 08.storm-kafka 详解和实战案例 09.S图表框架HighCharts介绍 10.HBase快速入门 11.基于HBase的Dao基类和实现类开发一 12.基于HBase的Dao基类和实现类...

Global site tag (gtag.js) - Google Analytics