hbase 快速入门之---HFILE数据格式

关于HFile的存储结构梳理以及快速定位rowkey 一、HFile结构介绍   为了支持数据的随机查询,HFile结构分为六个部分: 1、数据块–保存表中的数据,每一个数据块由块头和一些keyValue(record)组成,key的值是严格按照顺序存储的。块大小默认为64K(由建表时创建cf时指定或者HColumnDescriptor.setBlockSize(size)),这一部分可以压缩存储。在查询数据时,是以数据块为单位从硬盘loa 阅读详情

ØHFile文件不定长,长度固定的块只有两个:Trailer和FileInfo。
ØHFile写到硬盘时,Trailer被写到最后。 Trailer中指针指向其他数据块的起始点。
ØFile Info中记录了文件的一些Meta信息,例如:AVG_KEY_LEN, AVG_VALUE_LEN, LAST_KEY, COMPARATOR, MAX_SEQ_ID_KEY等
ØData Index和Meta Index块记录了每个Data块和Meta块的起始点
ØData Block是HBase I/O的基本单元,为了提高效率,HRegionServer中有基于LRU的Block Cache机制
Ø每个Data Block的大小可以在创建一个Table的时候通过参数指定,大号的Block有利于顺序Scan,小号Block利于随机查询
Ø每个Data Block除了开头的Magic以外就是一个个KeyValue对拼接而成, Magic内容就是一些随机数字,目的是防止数据损坏
HFile里面的每个KeyValue对就是一个简单的byte数组。这个byte数组里面包含了很多项,并且有固定的结构。

ØKeyLength和ValueLength:两个固定的长度,分别代表Key和Value的长度
ØKey部分
Row Length是固定长度的数值,表示RowKey的长度,Row就是RowKey
Column Family Length是固定长度的数值,表示Family的长度,接着就是Column Family,再接着是Qualifier,然后是两个固定长度的数值,表示Time Stamp和Key Type(Put/Delete)Value部分没有这么复杂的结构,就是纯粹的二进制数据
HFile 中的数据块大小默认为 64KB。如果访问 HBase 数据库的场景多为有序的访问,那么建议将该值设置的大一些。如果场景多为随机访问,那么建议将该值设置的小一些。一般情况下,通过调整该值可以提高 HBase 的性能。

HBase高性能随机查询之道 – HFile原理解析 在各色数据库系统百花齐放的今天,能让大家铭记的,往往是一个数据库所能带给大家的差异化能力。正如梁宁老师的产品思维课程中所讲到的,这是一个数据库系统所能带给产品使用者的"确定性"。差异化能力通常需要从数据库底层开始构筑,而数据存储方式显得至关重要,因为它直接关乎数据写入与读取的效率。在一个系统中,这两方面的能力需要进行很好的权衡:如果设计有利于数据的快速写入,可能意味着查询时需要需要花费较大的精力去... 阅读详情

相关推荐

[Hbase] Hbase优化之禁用wal以及Hfile应

1、WAL:write-ahead log 预写日志 灾难恢复,一旦服务器崩溃,通过重放log,即可恢复之前的数据(内存中还没有刷写到磁盘的数据);如果写入wal操作失败,整个操作就认为是失败。 因此,如果开启wal机制,写操作性能会降低; 如果关闭wal机制,数据在内存中未刷写到磁盘时,server突然宕机,产生数据丢失。 解决办法:不开启wal机制,手工刷新memstore的数据...

大数据基础入门教程 2406

hbase中的HFile文件格式详解

1.HFile详解 HFile文件分为以下六大部分 序号 名称 描述 1 数据块 由多个block(块)组成,每个块的格式为: [块头] + [key长] + [value长] + [key] + [value]。 2 元数据块 元数据是

HBase-0.90.5源码阅读 9146

利用Spark Rdd生成Hfile直接导入到Hbase

针对大批量插入Hbase的场景,如果单条记录插入的时候效率比较低下,如果可以利用Rdd生成Hfile的话,然后利用Bulk Load导入Hfile的话,则会大大提升导入的速度,废话不说,直接上代码: 1.利用Create创建表blog:create 'blog' ,'article' 2.创建数据文件 blog.txt                3.上传文件至hdfs 备注:

wl044090432的博客 1万+

HFile存储格式

HBase中的所有数据文件都存储在Hadoop HDFS文件系统上,主要包括上述提出的两种文件类型:     1. HFile, HBase中KeyValue数据的存储格式,HFile是Hadoop的二进制格式文件,实际上StoreFile就是对HFile做了轻量级包装,即St

kannju的专栏 692

深入剖析HBase HFile原理:文件结构、Block协作与缓存机制

HFile是HBase基于Google BigTable的SSTable(Sorted String Table)优化实现的存储文件,采用二进制格式持久化存储,具有以下核心特性:数据按Key有序排列(RowKey → ColumnFamily → Qualifier → Timestamp),支持高效的顺序扫描与二分查找。采用Block分块存储,将文件划分为多个固定大小(默认64KB,可配置)的Block,便于缓存管理与随机读写。内置索引与布隆过滤器,大幅减少磁盘I/O,提升随机读性能。支持。

u013127325的博客 1140

HBASE中HFile结构-你真的知道Hbase怎么查数据?

HBASE 中 HFile结构 序 since: 2021年4月14日 22:45 auth: Hadi Hfile Hbase 的数据以HFile的形式存在HDFS,以下则是HBase的数据存储逻辑结构: NameSpace > Table > Region > CF > HFile 而HFile则是: Hfile > Trailer > Load-on-open > bloom Index > Block Data >Root Index &

青冬的博客 1144

Spark RDD生成HFile快速导入数据到HBase

Spark RDD生成HFile快速导入数据到HBase主要思路通过观察hbase regionserver对put操作的处理,可以发现,数据首先写入到 memstore,在达到指定大小后会调用StoreFile的Writer类将数据flush到存储设 备中,如果开启过压缩算法则会先执行相应的压缩,得到压缩后的数据和数据结 构再进行写入。 通过观察HBase的StoreFileWriter,

qq_28890765的博客 3288

避开期货指标常见坑:文华财经赢顺DK多空指标优化配置指南(附参数调试技巧)

本文详细解析了文华财经赢顺DK多空指标的优化配置方法,帮助交易者避开常见使用误区。通过参数个性化适配、动态调整趋势阈值和过滤假信号的三重验证,提升指标在期货交易中的准确性。附有参数调试技巧和不同市况下的配置建议,适合中高级交易者参考。

weixin_29063979的博客 437

HBase BulkLoad 详解:HFile 生成、BulkLoad 流程与海量数据快速导入

本文深入探讨 HBase BulkLoad 机制,详细解析 HFile 格式与生成原理,完整介绍 BulkLoad 流程,并提供性能优化技巧和实战案例,帮助读者掌握海量数据高效导入 HBase 的方法。

✨ 欢迎来到【Seal ^_^ 的优快云博客】!✨ 654

StarCCM+ 导入STL几何模型进行仿真

通过 Import Surface Mesh 的方法导入 STL 文件进行仿真

薛定谔的alpha狗 6131

统信UOS系统盘扩容保姆级教程:用GParten-分区编辑器5分钟搞定

本文提供统信UOS系统盘扩容的详细图形化教程。针对系统盘空间不足问题,重点介绍如何使用系统自带的GParten-分区编辑器,在5-10分钟内安全、直观地完成扩容操作,无需记忆复杂命令,适合所有用户快速解决存储空间告急的困扰。

e3f4g5的博客 645

hbase架构原理之region、memstore、hfile、hlog、columm-family、colum、cell

**鄙人的新书《elasticsearch7完全开发指南》,欢迎订阅!** ----- https://wenku.baidu.com/view/8ff2ce94591b6bd97f192279168884868762b8e7 **《kibana权威指南》** ---- https://wenku.baidu.com/view/24cfee1ce43a580216fc700abb68a98270...

zhaojianting的博客 2万+

STM32实战:如何快速移植野火PID调试助手协议到你的电机控制项目

本文详细解析了如何将野火PID调试助手协议快速移植到STM32电机控制项目中。通过深度剖析协议帧格式、数据解析逻辑及环形缓冲区应用,提供了从工程结构规划、核心函数适配到串口中断集成的完整移植步骤。文章还分享了协议健壮性增强、数据上报频率优化等高级调试技巧,帮助开发者构建稳定可靠的上位机调试通道,大幅提升PID参数整定效率。

weixin_29171129的博客 469

hbase原理之Hfile篇

HFile的内部结构? HBase读文件细粒度的过程? HBase随机读写快除了MemStore之外的原因? Hbase的数据以HFile的形式存在HDFS, 物理存储路径是: NameSpace->Table->Region->CF->HFile 这一篇我们来说下这个HFile,把路径从HFile开始再补充一下 HFile->Block->Ke...

breakout_alex的博客 839

ThingsBoard 3.1.1版本在window本地运行之TB-Gateway服务搭建(三)

TB-gateway服务是TB不可或缺的部分,很多的协议都需要TB-gateway来做分类处理,今天我们就来做TB-Gateway服务搭建。

晚点遇见你,余生都是你! 2475

RK3588 部署 YOLO26 目标检测:从环境搭建到 NPU 推理

采集图像(500+ 张,覆盖不同光照和角度)→ 筛选(删除模糊、无目标的图像)→ LabelImg 标注(选择 YOLO 格式)→ 划分 train:val:test = 7:2:1labelImg├── train/├── val/nc: 3类别顺序必须与 LabelImg 标注时一致。YOLO26 在 RK3588 上的部署流程是 PC 端训练 → ONNX 导出(opset=11)→ RKNN 转换(INT8 量化)→ 板端推理。

LXY_LOVE36的博客 419

hbase hfile文件格式 详解

 [value]。 2 元数据块 元数据是key-value类型的值,但元数据快只保存元数据的value值,元数据的key值保存在第五项(元数据索引块)中。   该块由多个元数据值组成。 3 fileInfo块 该块保存与HFile相关的一些信息。   fileInfo是以key值排序key-value类型的值。基本格式为: keyValue元素的个数 + (key + value类型id + value) + (key + value类型id + value) +

1584

分享Charles抓包 显示<unknown> 解决方案 !

首先电脑上需要安装charles,然后需要设置手机上的WiFi设置,修改配置中的代理设置,把服务器的主机名设置成你电脑当前的ip地址(需要注意的是,你的代理服务器主机名的ip地址要和你当前连的ip地址的网段需要一致)。像 Charles 这样的工具,虽然功能强大,但仍然需要用户具备一定的配置和排障能力,以应对各种复杂的网络环境。通过将 Charles 的 SSL 证书正确安装到移动设备中,并在设置中启用“允许不安全的内容”选项,最终成功解决了这一问题,并准确抓取到所有请求数据。Charles 显示。

朱雀随云记的博客 8109

Hbase---hfile

Hbase---hfile

Y521316的博客 1752

人工智能训练师三级考试大纲深度解读|理论+实操分值分布+六大模块占比

三级人工智能训练师考试分为理论和实操两大模块(各100分,合格线60分)。理论考试包含AI基础(30%)、数据标注(25%)、模型训练(20%)、测试(15%)和系统运维(10%),题型为客观题;实操考核侧重数据标注(40%)、模型测试(35%)和系统运维(25%),采用现场操作形式。复习应优先关注AI基础和数据标注等高分值模块,实操需重点掌握标准流程和结果准确性(占评分70%)。考试要求两模块均达标,理论侧重概念理解,实操强调规范执行与文档完整。

白话机器学习 1108

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

MapReduce生成HFile入库到HBase

个人小站,正在持续整理中,欢迎访问:http://shitouer.cn 小站博文地址:MapReduce生成HFile入库到HBase 一、这种方式有很多的优点: 1. 如果我们一次性入库hbase巨量数据,处理速度慢不说,还特别占用Region资源, 一个比较高效便捷的方法就是使用 “Bulk Loading”方法,即HBase提供的HFileOutputFormat类。 2...

depe16540458的博客 303

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

hbase hfile java_HBase之HFile解析

Sumary:ProtobufBinarySearch本篇主要讲HFileV2的相关内容,包括HFile的构成、解析及怎么样从HFile中快速找到相关的KeyValue.基于Hbase 0.98.1-hadoop2,本文大部分参考了官方的资源,大家可以先阅读下这篇官方文档,Reference Guide:http://hbase.apache.org/book/apes03.html。其实也就是跟...

weixin_39844515的博客 472

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

HBase – 探索HFile索引机制

本文由网易云发布。 作者:范欣欣 01HFile索引结构解析 HFile中索引结构根据索引层级的不同分为两种:single-level和mutil-level,前者表示单层索引,后者表示多级索引,一般为两级或三级。HFile V1版本中只有single-level一种索引结构,V2版本中引入多级索引。之所以引入多级索引,是因为随着HFile文件越来越大,Data Block越来越多...

Diana的博客 241

HBase MemStore与HFile深度解析:内存刷写策略与读取优化实践

本文深入剖析HBase核心存储组件MemStore与HFile的内部工作机制,详细解析内存刷写策略、Compaction过程以及读取路径优化方法,帮助读者理解HBase如何平衡内存与磁盘IO,实现高性能随机读写。

✨ 欢迎来到【Seal ^_^ 的优快云博客】!✨ 369

java hfile_HFile存储格式

HBase中的所有数据文件都存储在HadoopHDFS文件系统上,主要包括两种文件类型:1. HFile, HBase中KeyValue数据的存储格式,HFile是Hadoop的二进制格式文件,实际上StoreFile就是对HFile做了轻量级包装,即StoreFile底层就是HFile2. HLog File,HBase中WAL(Write Ahead Log)的存储格式,物理上是Hadoop的...

weixin_36035610的博客 1324
上一篇: hbase快速入门之---系统架构
下一篇: hbase快速入门之---region定位过程
Java_Soldier
博客等级 码龄10年 27粉丝 82原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值