大家好,今天分享的是HBase体系架构和HBase集群安装。承接上两篇文章《HBase简介》和《HBase数据模型》,点击回顾这2篇文章,有助于更好地理解本文。

一、HBase体系架构

 
 
                                                                                      Hbase体系架构图

1.1、 Client

• 包含访问HBase的接口并维护cache来加快对HBase的访问

1.2、Region

• HBase自动把表水平划分成多个区域(region),每个region会保存一个表里面某段连续的数据;每个表一开始只有一个region,随着数据不断插入表,region不断增大,当增大到一个阀值的时候,region就会等分会两个新的region(裂变);
• 当table中的行不断增多,就会有越来越多的region。这样一张完整的表被保存在多个Regionserver 上。

1.3、Zookeeper

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

1.4、Master

• 为Region server分配region;
• 负责Region server的负载均衡;
• 发现失效的Region server并重新分配其上的region;
• 管理用户对table的增删改操作;

1.5、RegionServer     

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

1.6、Memstore与storefile

•  一个region由多个store组成,一个store对应一个CF(列族)
 
• store包括位于内存中的memstore和位于磁盘的storefile,写操作先写入memstore,当memstore中的数据达到某个阈值,hregionserver会启动flashcache进程写入storefile,每次写入形成单独的一个storefile;当storefile文件的数量增长到一定阈值后,系统会进行合并(minor、major compaction),在合并过程中会进行版本合并和删除工作(majar),形成更大的storefile
• 当一个region所有storefile的大小和超过一定阈值后,会把当前的region分割为两个,并由hmaster分配到相应的regionserver服务器,实现负载均衡
• 客户端检索数据,先在memstore找,找不到再找storefile
• HRegion是HBase中分布式存储和负载均衡的最小单元。最小单元就表示不同的HRegion可以分布在不同的 HRegion server上。
• HRegion由一个或者多个Store组成,每个store保存一个columns family。
• 每个Strore又由一个memStore和0至多个StoreFile组成。如图:StoreFile以HFile格式保存在HDFS上。

二、Hbase集群安装

1、上传tar包到集群里,这里我选择的是hbase-1.1.2-bin.tar包。
https://hbase.apache.org 这是hbase官网。

2、修改hbase-env.sh中配置JAVA_HOME:


 
不使用HBase的默认zookeeper配置:


 
3、修改配置hbase-site.xml

 
 
4、配置regionservers 添加你配置的regionservers 的主机名,如hadoop1,hadoop2,hadoop3 ...

 
5、vi并配置backup-masters 添加你配置的master备份的主机名


 
6、拷贝Hadoop的conf下配置文件hdfs-site.xml到当前conf下
7、启动:Zookeeper集群主机
8、启动hbase :因为HBase依赖于Hadoop和zookeeper之上的所以要Hadoop集群启动正常和Zookeeper集群启动正常之后,再启动hbase。


 
9、启动后


 
10、启动浏览器访问


 
 
如果能成功显示出此页面,那么我们的hbase集群安装就算大功告成啦~。

好了,本次分享先告一段落,下次我们将继续为大家介绍hbase,下次见~~~

有问题的或者想获取更多资料的请茄薇 java8733

HBase体系架构和集群安装的更多相关文章

  1. hbase 0.98.1集群安装

    本文将基于hbase 0.98.1解说其在linux集群上的安装方法,并对一些重要的设置项进行解释,本文原文链接:http://blog.csdn.net/bluishglc/article/deta ...

  2. HBase 1.2.6 完全分布式集群安装部署详细过程

    Apache HBase 是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,是NoSQL数据库,基于Google Bigtable思想的开源实现,可在廉价的PC Server上搭建大规模结构化存 ...

  3. hadoop 2.2.0集群安装

    相关阅读: hbase 0.98.1集群安装 本文将基于hadoop 2.2.0解说其在linux集群上的安装方法,并对一些重要的设置项进行解释,本文原文链接:http://blog.csdn.net ...

  4. HBase简介及集群安装

    一.Hbase概述 Apache HBase™是Hadoop数据库,是一个分布式,可扩展的大数据存储. 当您需要对大数据进行随机,实时读/写访问时,请使用Apache HBase™.该项目的目标是托 ...

  5. hbase集群安装与部署

    1.相关环境 centos7 hadoop2.6.5 zookeeper3.4.9 jdk1.8 hbase1.2.4 本篇文章仅涉及hbase集群的搭建,关于hadoop与zookeeper的相关部 ...

  6. hbase单机环境的搭建和完全分布式Hbase集群安装配置

    HBase 是一个开源的非关系(NoSQL)的可伸缩性分布式数据库.它是面向列的,并适合于存储超大型松散数据.HBase适合于实时,随机对Big数据进行读写操作的业务环境. @hbase单机环境的搭建 ...

  7. HBase集群安装部署

    0x01 软件环境 OS: CentOS6.5 x64 java: jdk1.8.0_111 hadoop: hadoop-2.5.2 hbase: hbase-0.98.24 0x02 集群概况 I ...

  8. Hbase 集群安装(Hadoop 2.6.0 hbase0.99.2)

    一:说明 该安装是在hadoop集群安装后进行,详情可见上一篇博客虚拟机centos7系统下安装hadoop ha和yarn ha(详细) .其中涉及五台机器,两台master(机器名:master, ...

  9. hbase和ZooKeeper集群安装配置

    一:ZooKeeper集群安装配置 1:解压zookeeper-3.3.2.tar.gz并重命名为zookeeper. 2:进入~/zookeeper/conf目录: 拷贝zoo_sample.cfg ...

随机推荐

  1. java_26 缓冲流

    1.缓冲流: 读取数据大量的文件时,读取的速度慢, java提供了一套缓冲流,提高IO流的效率.分为字节缓冲流和字符缓冲流. 字节缓冲流: 缓冲输出流:BufferedOutputStream 缓冲输 ...

  2. Linux 学习笔记 4:Shell 编程

    1.简单过滤器 a. pr [OPTION] [FILE] 功能:改变文件打印格式 选项 功能 -l n 设定页面长度为n行 -w n 设定页面总宽度为n个字符(不够会被砍掉) -h str 设定页眉 ...

  3. C# 使用运算符重载 简化结果判断

    执行某个方法后, 一般都要对执行结果判断, 如果执行不成功, 还需要显示错误信息, 我先后使用了下面几种方式 /// <summary> /// 返回int类型结果, msg输出错误信息 ...

  4. 201621123002《java程序设计》第九周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 1.2 选做:收集你认为有用的代码片段 //功能需求:将所有大于5的生成一个新的List对象 List lis ...

  5. Codeforces 766D. Mahmoud and a Dictionary 并查集 二元敌对关系 点拆分

    D. Mahmoud and a Dictionary time limit per test:4 seconds memory limit per test:256 megabytes input: ...

  6. tomcat中如何禁止列目录下的文件

    tomcat中如何禁止列目录下的文件在{tomcat_home}/conf/web.xml中,把listings参数设置成false即可,如下: <servlet> <servlet ...

  7. spring Resource(转)

    http://blog.csdn.net/u011225629/article/details/47143075

  8. js string和number

    number Js只有一种数字类型(包括整型,浮点型) 极大或极小的可用科学计数法来表示.(7.7123e+1) 所有js数字均为64位 Js所有的数字都存储为浮点型 小数的最大位数是17位 0开头的 ...

  9. 【转】async & await 的前世今生(Updated)

    async 和 await 出现在C# 5.0之后,给并行编程带来了不少的方便,特别是当在MVC中的Action也变成async之后,有点开始什么都是async的味道了.但是这也给我们编程埋下了一些隐 ...

  10. 使用signalr实现网页和微信公众号实时聊天(上)

    最近项目中需要实现客户在公众号中和客服(客服使用后台网站系统)进行实时聊天的功能.折腾了一段时间,实现了这个功能.现在将过程记录下,以便有相同需求的同行可以参考,也是自己做个总结.这篇是上,用手机编辑 ...