hbase基础知识一
1. hbase是什么
- 漫画学习hbase----最易懂的Hbase架构原理解析
- http://developer.51cto.com/art/201904/595698.htm
1.1 hbase的概念
hbase基于Google的BigTable论文,是建立的hdfs之上,提供高可靠性、高性能、列存储、可伸缩、实时读写的分布式数据库系统。在需要实时读写随机访问超大规模数据集时,可以使用hbase。
1.2 hbase的特点
海量存储
可以存储大批量的数据
列式存储
hbase表的数据是基于列族进行存储的,列族是在列的方向上的划分。
极易扩展
底层依赖HDFS,当磁盘空间不足的时候,只需要动态增加datanode节点服务(机器)就可以了
可以通过增加服务器来提高集群的存储能力
高并发
支持高并发的读写请求
稀疏
稀疏主要是针对Hbase列的灵活性,在列族中,你可以指定任意多的列,在列数据为空的情况下,是不会占用存储空间的。
数据的多版本
hbase表中的数据可以有多个版本值,默认情况下是根据版本号去区分,版本号就是插入数据的时间戳
数据类型单一
所有的数据在hbase中是以字节数组进行存储
2、hbase整体架构
1、Client
客户端
Client包含了访问Hbase的接口
另外Client还维护了对应的cache来加速Hbase的访问,比如cache的.META.元数据的信息
2、Zookeeper
zookeeper集群
作用
实现了HMaster的高可用
保存了hbase的元数据信息,是所有hbase表的寻址入口
对HMaster和HRegionServer实现了监控
3、HMaster
hbase集群的老大
作用
为HRegionServer分配Region
维护整个集群的负载均衡
维护集群的元数据信息
发现失效的Region,并将失效的Region分配到正常的HRegionServer上
4、HRegionServer
hbase集群中的小弟
负责管理Region
接受客户端的读写数据请求
切分在运行过程中变大的region
5、Region
hbase集群中分布式存储的最小单元
3、hbase表的数据模型
rowkey
行键
table的主键,table中的记录按照rowkey 的字典序进行排序
Column Family
列族
hbase表中的每个列,都归属与某个列族。列族是表的schema的一部分(而列不是),必须在使用表之前定义。
Timestamp
时间戳
每次数据操作对应的时间戳,可以看作是数据的version number版本号
Column
列
列族下面的具体列
属于某一个ColumnFamily,类似于我们mysql当中创建的具体的列
cell
单元格
由{row key, column( =<family> + <label>), version} 唯一确定的单元
cell中的数据是没有类型的,全部是以字节数组进行存储
hbase基础知识一的更多相关文章
- HBASE基础知识总结
HBASE基础知识总结 一,概要说明 文章首先回顾HBase 的数据模型和数据层级结构,对数据的每个层级的作用和架构进行了详细阐述:随后介绍了数据写入和读取的详细流程.先把架构图和流程图来坐镇. 架构 ...
- HBASE基础知识
HBASE的集群的搭建HBASE的表设计HBASE的底层存储模型 HBase 是一个高可靠.高性能.面向列.可伸缩的分布式缓存系统.利用HBase 技术可在廉价PC Server上搭建起大规模结构化存 ...
- Hadoop第11周练习—HBase基础知识
1 :数据即日志 内容 2 :HBase合并过程 内容 3 :HBase一致性 内容 书面作业1:数据即日志 内容 我们常说HBase是“数据即日志”的数据库,它是怎样修改和删除数据的?和Oracle ...
- HBase基础知识摘要
HBASE 列式存储,设计思想参考BigTable 文档:http://hbase.apache.org/book.html hive适合数据分析,离线任务 hbase大数据实时查询 避免显式锁,提供 ...
- 大数据基础知识问答----spark篇,大数据生态圈
Spark相关知识点 1.Spark基础知识 1.Spark是什么? UCBerkeley AMPlab所开源的类HadoopMapReduce的通用的并行计算框架 dfsSpark基于mapredu ...
- 最全的spark基础知识解答
原文:http://www.36dsj.com/archives/61155 一. Spark基础知识 1.Spark是什么? UCBerkeley AMPlab所开源的类HadoopMapReduc ...
- ZooKeeper_基础知识学习
ZooKeeper是Hadoop的开源子项目(Google Chubby的开源实现),它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护.命名服务.分布式同步.组服务等. Zookee ...
- 大数据存储利器 - Hbase 基础图解
由于疫情原因在家办公,导致很长一段时间没有更新内容,这次终于带来一篇干货,是一篇关于 Hbase架构原理 的分享. Hbase 作为实时存储框架在大数据业务下承担着举足轻重的地位,可以说目前绝大多数大 ...
- Elasticsearch基础知识学习
概要 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java开发的,并作为Ap ...
随机推荐
- C#读写设置修改调整UVC摄像头画面-焦点
有时,我们需要在C#代码中对摄像头的焦点进行读和写,并立即生效.如何实现呢? 建立基于SharpCamera的项目 首先,请根据之前的一篇博文 点击这里 中的说明,建立基于SharpCamera的摄像 ...
- Java自学-接口与继承 默认方法
默认方法 步骤 1 : 什么是默认方法 默认方法是JDK8新特性,指的是接口也可以提供具体方法了,而不像以前,只能提供抽象方法 Mortal 这个接口,增加了一个默认方法 revive,这个方法有实现 ...
- tomcat添加https服务
系统环境: centos6.7 jdk-7u79-linux-x64 apache-tomcat-7.0.57 apr-1.5.2 apr-util-1.5.4 一.tomcat安装 自己准备tomc ...
- JavaScript 之 Math对象
Math对象 Math 对象不是构造函数,它具有数学常数和函数的属性和方法,都是以静态成员的方式提供. 常用方法: Math.PI // 圆周率 Math.random() // 生成随机数,生成0~ ...
- IOS之NSString NSData char 相互转换
转自:http://blog.csdn.net/xialibing103/article/details/8513312 1.NSString转化为UNICODE String:(NSString*) ...
- error C4996: 'AVStream::codec': was declared deprecated
关闭VS的SDL检查 工程 属性=>C/C++ =>General=> SDL checks 改为 No(/sdl).
- linux设备驱动程序--gpio控制
gpio驱动程序 上一章节linux设备驱动程序--创建设备节点章节主要介绍了linux字符设备驱动程序的框架,从这一章节开始我们讲解各种外设的控制,包括gpio,i2c,dma等等,既然是外设,那就 ...
- (05节)快速搭建SSM项目
1.1 快速搭建Web项目 注意点:name:archetypeCatalog,value:internal 原因:Intellij IDEA根据maven archetype的本质,执行mvn a ...
- CentOS7 编译安装MySQL5.6.38(一)
一.下载MySQL5.6.38安装包 下载地址:https://www.mysql.com/downloads/ 打开网站之后选择Archives 然后再选择开源版本 选择我们要下载的版本: htt ...
- mysql查询语句中使用星号真的慢的要死?
前言 之所以写这篇文章,是源于以前看过的关于sql语句优化的帖子,里面明确提到了在sql语句中不要使用 * 来做查询,就像下面的规则中说的 2.尽量避免使用select *,返回无用的字段会降低查询效 ...