hbase(二)hfile结构】的更多相关文章

本文由  网易云发布. 作者:范欣欣 本篇文章仅限内部分享,如需转载,请联系网易获取授权. HFile是HBase存储数据的文件组织形式,参考BigTable的SSTable和Hadoop的TFile实现.从HBase开始到现在,HFile经历了三个版本,其中V2在0.92引入,V3在0.98引入.HFileV1版本的在实际使用过程中发现它占用内存多,HFile V2版本针对此进行了优化,HFile V3版本基本和V2版本相同,只是在cell层面添加了Tag数组的支持.鉴于此,本文主要针对V2版…
本文目录如下所示: 目录 HFile在HBase架构中的位置 什么是HFile HFile逻辑结构 HFile逻辑结构的优点 HFile物理结构 HFile生成流程 HFile中Block块解析 多大的HFile文件才存在Intermiate Index Block HFile在HBase架构中的位置 如上图所示,HFile是HBase最底层的文件组织形式. Table --N Region --N Store --N StoreFile --HFile(StoreFile与HFile是一对一)…
HFile结构 截止hbase 1.0.2版本,hfile已经有3个版本,要深入了解hfile的话,还是要从第一个版本开始看起. hfile v1 Data Block:保存表中的数据,这部分可以被压缩 Meta Block:(可选)保存用户自定义的kv对,可以被压缩. File Info :Hfile的meta元信息,不被压缩,定长. Data Block Index :Data Block的索引.每个Data块的起始点. Meta Block Index:(可选的)Meta Block的索引…
Rowkey设计 Rowkey设计原则 Rowkey设计应遵循以下原则: 1.Rowkey的唯一原则 必须在设计上保证其唯一性.由于在HBase中数据存储是Key-Value形式,若HBase中同一表插入相同Rowkey,则原先的数据会被覆盖掉(如果表的version设置为1的话),所以务必保证Rowkey的唯一性 2. Rowkey的排序原则 HBase的Rowkey是按照ASCII有序设计的,我们在设计Rowkey时要充分利用这点.比如视频网站上对影片<泰坦尼克号>的弹幕信息,这个弹幕是按…
一.HBase简介 1.1简介 hbase是bigtable的开源山寨版本.是建立的hdfs之上,提供高可靠性.高性能.列存储.可伸缩.实时读写的数据库系统.它介于nosql和RDBMS之间,仅能通过主键(row key)和主键的range来检索数据,仅支持单行事务(可通过hive支持来实现多表join等复杂操作).主要用来存储非结构化和半结构化的松散数据.与hadoop一样,Hbase目标主要依靠横向扩展,通过不断增加廉价的商用服务器,来增加计算和存储能力. 1.2 Hbase与传统数据库的对…
HBase 的表结构 2016-10-13 杜亦舒 HBase 是一个NoSQL数据库,用于处理海量数据,可以支持10亿行百万列的大表,下面就了解一下数据是如何存放在HBase表中的 关系型数据库的表结构 为了更好的理解HBase表的思路,先回顾一下关系数据库中表的处理方式 例如有一个用户表user_info,有字段:id.name.tel,表名和字段需要在建表时指定 create table user_info ( id 类型, name 类型, tel 类型 ) 然后插入两条数据 inser…
HBase 的存储结构 2016-10-17 杜亦舒 HBase 中的表常常是超级大表,这么大的表,在 HBase 中是如何存储的呢?HBase 会对表按行进行切分,划分为多个区域块儿,每个块儿名为 HRegionHBase 是集群结构,会把这些块儿分散存储到多个服务器中,每个服务器名为HRegionServer服务器多了,就需要一个管理者 HMaster,负责 HRegion 的分配.HRegionServer 负载均衡的处理 等事务当某个 HRegion 的大小达到阈值后,便会被分割开来,新…
Hadoop生态圈-HBase的HFile创建方式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 废话不多说,直接上代码,想说的话都在代码的注释里面. 一.环境准备 list create 'yinzhengjie:WordCount3','f1','f2' list desc 'yinzhengjie:WordCount3' scan 'yinzhengjie:WordCount3' 二.编写HFile创建方式的代码 1>.编写Map端代码 /* @author :yinz…
本文由  网易云发布. 作者: 范欣欣 本篇文章仅限内部分享,如需转载,请联系网易获取授权. 01 HFile索引结构解析 HFile中索引结构根据索引层级的不同分为两种:single-level和mutil-level,前者表示单层索引,后者表示多级索引,一般为两级或三级.HFile V1版本中只有single-level一种索引结构,V2版本中引入多级索引.之所以引入多级索引,是因为随着HFile文件越来越大,Data Block越来越多,索引数据也越来越大,已经无法全部加载到内存中(V1版…
HBase 是一个NoSQL数据库,用于处理海量数据,可以支持10亿行百万列的大表,下面我就和大家分享一下数据是如何存放在HBase表中的 为了更好的理解HBase表的思路,先回顾一下关系数据库中表的处理方式 ①关系型数据库的表结构 例如有一个用户表user_info,有字段:id.name.tel,表名和字段需要在建表时指定 create table user_info ( id 类型, name 类型, tel 类型 ) 然后插入两条数据 insert into user_info valu…