`
bit1129
  • 浏览: 1067805 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

【HBase四】HBase系统架构

 
阅读更多

1. HBase系统架构


 

HBase集群由如下角色组成:

  • Zookeeper集群,提供HMaster的HA以及分布式配置管理服务
  • HMaster:Active Master和用于HA的Backup Master
  • HRegion Servers:HBase集群中负责数据存储的服务器,类似Master/Slave架构中的Slave
  • HRegion:用于存储HBase表中的部分数据行,[StartRowKey,endRowKey),一个表中的数据可能分布在多个HRegion中。当一个HRegion中存放的数据记录超过一定容量时,类似MongoDB的Chunk,HRegion也会会分裂成多个HRegion。不同的HRegion会被HMaster分配到不同的HRegionServer上进行管理,这就体现了数据分散存储的特性
  • Store:一个HRegion中存在多个Store,Store可以认为与表的Column Family对应,也就是,不同的Column Family进行分别存储,以便针对不同的Column Family采用不同的压缩算法进行压缩。Store由MemStore和一系列的StoreFile组成,用户的数据首先写入到MemStore中,当MemStore满了以后会Flush成一个StoreFile(底层实现是HFile)。
  • StoreFile:一个Store中包含一个或者StoreFile,是将MemStore中的数据Flush到磁盘上。

 

 

 

2. HBase的系统角色

2.1  Client

  • 包含访问HBase的接口,并维护cache来加快对HBase的访问,与HRegionServer打交道

2.2 Zookeeper

  • 保证任何时候,集群中只有一个Master(HA)
  • 存贮所有Region的寻址入口
  • 实时监控Region server的上线和下线信息。并实时通知给Master
  • 存储HBase的schema和table元数据

2.3 Master

  • 为Region Server分配Region
  • 负责Region Server的负载均衡
  • 发现失效的Region server并重新分配其上的region到其它的HRegionServer(需要时间,但是这个对用户的读写这个上面的数据产生影响)
  • 管理用户对table的增删改查操作

2.4 Region Server

  • Region server维护region,处理对这些region的IO请求
  • Region server负责切分在运行过程中变得过大的region

2.5 HLog、HFile

HBase中的所有数据文件都存储在Hadoop HDFS文件系统上,主要包括上述提出的两种文件类型:

  • HFile, HBase中KeyValue数据的存储格式,HFile是Hadoop的二进制格式文件,实际上StoreFile就是对HFile做了轻量级包装。
  • HLog,HBase中WAL(Write Ahead Log) 的存储格式,物理上是Hadoop的Sequence File。

 

 

 

3. Zookeeper的作用

 

 

Master和所有RegionServer都向Zookeeper注册

 

 

4. Write Ahead of Log

 

 

HLog日志重做文件,首相将操作日志写到HLog中,假如写HRegion时,此时的HRegion失败导致写失败,此时可以从HLog中重新读取写失败的数据

 



 

5. HDFS vs HBase

 

 

 

8. SQL vs HBase



 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 大小: 297.8 KB
  • 大小: 69.6 KB
  • 大小: 275.1 KB
  • 大小: 89.9 KB
  • 大小: 323.5 KB
  • 大小: 359.6 KB
分享到:
评论

相关推荐

    hbase安装与hbase架构说明

    在HBase的架构中,Client是用户与系统交互的接口,它通过远程过程调用(RPC)机制与HMaster和HRegionServer通信。对于数据读写操作,Client直接与HRegionServer交互,而对于表管理和元数据操作,Client则与HMaster...

    HBASE架构和原理解析

    ### HBASE架构与原理详解 #### 一、HBASE简介 HBase是一个开源的、分布式的、基于列存储的非关系型数据库系统。它最初源自Google的BigTable论文,并构建在Hadoop之上,利用Hadoop分布式文件系统(HDFS)作为其底层...

    大数据书籍-Hbase架构设计(高清)

    《大数据书籍-Hbase架构设计》是一本专注于大数据领域中分布式数据库Hbase的深度解析书籍,适合对大数据技术尤其是Hbase感兴趣的程序员和数据分析师。书中详细阐述了Hbase的核心原理、生态环境以及在实际项目中的...

    使用kafka,spark,hbase开发日志分析系统

    ## 系统架构 本使用kafka,spark,hbase开发日志分析系统。 ![architecture](/docs/images/architecture.png "architecture") ### 软件模块 * Kafka:作为日志事件的消息系统,具有分布式,可分区,可冗余的...

    Hbase 组件 、架构

    总之,HBase的架构和组件设计体现了它作为一个分布式NoSQL数据库的优势和特点,通过合理的数据划分、负载均衡和故障转移机制,保证了数据存储的高可靠性和系统的高性能。HBase特别适用于处理大量数据的实时读写操作...

    HBase应用架构PDF版本

    2. **HBase架构**:HBase的核心组件包括Region Server、Master服务器、ZooKeeper和表。Region Server负责数据存储和处理,Master服务器管理全局的表和Region分配,ZooKeeper用于协调集群和服务发现。 3. **行与列族...

    hbase 资源合集 hbase 企业应用开发实战 权威指南 hbase 实战 hbase 应用架构

    《HBase资源合集》包含了四本重量级的书籍,分别是《HBase企业应用开发实战》、《HBase权威指南》、《HBase实战》以及《HBase应用架构》。这些书籍深入浅出地探讨了HBase在大数据环境中的应用与开发,是学习和掌握...

    Cassandra与HBase系统架构比对.pdf

    Cassandra与HBase系统架构比对 Cassandra与HBase是两种常用的NoSQL数据库管理系统,它们之间有着许多相似之处,但同时也存在着一些关键的差异。以下是对Cassandra与HBase系统架构的比对。 数据模型 Cassandra的...

    HBase架构图

    **HBase架构图** HBase,全称是Apache HBase,是一个分布式的、面向列的开源数据库,基于Google的Bigtable论文设计,是Apache Hadoop项目的一部分。它为大规模数据集(数十亿行,数百万列)提供随机访问和强一致性...

    hbase应用架构指南

    Hbase全称为Hadoop Database,即Hbase是Hadoop的数据库,是一个分布式的存储系统。...本篇文章将重点介绍Hbase三个方面的内容:Hbase体系结构(架构)的介绍、Hbase shell的操作、Hbase的Java api的客户端操作

    Hbase架构简介、实践

    ### HBase架构简介 HBase是一种分布式的、面向列的开源数据库,是Apache顶级项目之一。它基于Google的Bigtable论文设计,旨在为海量数据提供实时读写访问能力。HBase利用Hadoop HDFS作为底层数据存储,并依赖于...

    HBase存储架构详解

    HBase存储架构详解 HBase存储架构是HBase的核心组件之一,它们之间的关系非常复杂。本文将详细解释HBase存储架构的组件、它们之间的关系,以及它们如何工作。 HBase存储架构主要包含以下几个组件: 1. HMaster:...

    Cassandra与HBase系统架构比对

    ### Cassandra与HBase系统架构比对 #### 一、引言 随着大数据技术的发展,分布式数据库因其出色的扩展性和高可用性而受到了广泛的关注。在众多的NoSQL数据库中,Cassandra 和 HBase 是两种非常流行的分布式数据库...

    分布式存储系统:HBase:HBase架构与原理.docx

    分布式存储系统:HBase:HBase架构与原理.docx

    HBase架构解析——维基百科[归纳].pdf

    《HBase架构解析——维基百科[归纳].pdf》这篇文档是关于Apache HBase的架构解析,主要介绍了HBase的基本概念、数据模型以及架构组成部分。HBase是一个开源项目,其目标是在Hadoop分布式计算环境中提供类似Google ...

    16-HBase简介、架构

    HBase思维导图,便捷整理思路,HBase简介、HBase架构、HBase数据模型、HBase角色

    HBase 系统架构

    **HBase 系统架构详解** HBase 是一个基于谷歌 Bigtable 模型设计的开源分布式数据库,属于 Apache Hadoop 生态系统的一部分。它是一个非关系型、分布式、行存储的列族数据库,专为大数据设计,适用于处理海量数据...

    HBase优化-系统架构

    【HBase优化-系统架构】主要探讨了针对HBase性能的优化策略,特别是从系统架构层面进行调优的方法。HBase作为一个分布式、列族式的NoSQL数据库,性能优化至关重要,尤其是对于大数据处理场景。 首先,关注到配置...

Global site tag (gtag.js) - Google Analytics