Hudi系列:Hudi核心概念之索引(Indexs)

news/2025/10/17 14:57:43/文章来源:https://www.cnblogs.com/Jcloud/p/19147860

Hudi系列:Hudi核心概念(版本1.0)

•Hudi架构

◦一. 时间轴(TimeLine)s

1.1 时间轴(TimeLine)概念
1.2 Hudi的时间线由组成
1.3 时间线上的Instant action操作类型
1.4 时间线上State状态类型
1.5 时间线官网实例

◦二. 文件布局

◦三. 索引

3.1 简介

3.2 对比其它(Hive)没有索引的区别

3.2 多态索引

布隆过滤器

记录索引

表达索引

二级索引

3.3写入端的索引类型

3.4 全局索引与非全局索引

四. 表类型

4.1 COW:(Copy on Write)写时复制表

4.1.1 概念

4.1.2 COW工作原理
4.1.3 COW表对表的管理方式改进点

4.2 MOR:(Merge on Read)读时复制表

4.2.1 概念
4.2.2 MOR表工作原理

4.3 总结了两种表类型之间的权衡

五. 查询类型

5.1 Snapshot Queries

5.2 Incremental Queries

5.3 Read Optimized Query

简介

Hudi 中最基础的索引机制会一致地跟踪从给定键(记录键 + 可选分区路径)到文件 ID 的映射。其他类型的索引(如二级索引)都以此为基础构建。一旦将记录的第一个版本写入文件组,记录键和文件组/文件 ID 之间的映射就很少会发生变化。只有以删除 + 插入形式实现的集群或跨分区更新才会将记录键重新映射到不同的文件组。即便如此,给定的记录键在时间线上的任何完成时刻都只与一个文件组相关联。

对比其它(Hive)没有索引的区别

对于 Copy-On-Write表,索引可实现快速的插入/删除操作,因为无需与整个数据集连接来确定要重写哪些文件。对于Merge-On-Read 表,索引允许 Hudi 限制需要合并任何给定基础文件的更改记录数量。具体而言,给定基础文件仅需与属于该基础文件的记录的更新合并。相反,没有索引组件的Hive ACID需要将所有的基本文件与所有传入的更新/删除记录合并。

 


 

多态索引

Hudi 通过增强元数据表以合并新类型索引的能力来支持多模式索引,并辅以索引构建的异步机制。此增强功能支持元数据表中的一系列索引,从而显著提高了写入和读取表的效率。

 


 

 

布隆过滤器Bloom Filters

Bloom filter 索引作为元数据表中的 bloom_filter 分区。此索引采用基于范围的修剪来修剪记录键的最小值和最大值,并采用基于 bloom 过滤器的查找来标记传入的记录。对于大型表,这涉及读取所有匹配数据文件的页脚以查找 bloom 过滤器,这在整个数据集随机更新的情况下成本可能很高。此索引集中存储所有数据文件的 bloom 过滤器,以避免直接从所有数据文件扫描页脚。

记录索引Record Indexes

记录索引作为元数据表中的 record_index 分区。包含记录键到位置的映射。记录索引是一个全局索引,在表的所有分区中强制键唯一性。此索引有助于比其他现有索引更快地定位记录,并且可以在索引查找主导写入延迟的大型部署中提供更快的加速。为了适应非常高的规模,它利用基于哈希的键空间分片。此外,在读取数据时,索引允许点查找,从而显着加快索引映射检索过程。

表达式索引Expression Index

Expression Index是列函数的索引。如果查询对列函数有谓词,则可以使用表达式索引来加速查询。表达式索引存储在元数据表下的 expr_index_ 前缀分区中(每个表达式索引一个)。可以使用 SQL 语法创建表达式索引。请在此处查看 SQL DDL 文档以了解更多详细信息。

以下是控制在写入器上启用表达式索引构建和维护的配置,后续会详细讲解,这个是1.0的新增的特性

 


 

二级索引Secondary Index

Secondary Index允许用户在 Hudi 表中不属于记录键列的列上创建索引(对于记录键字段,Hudi 支持记录级索引)。二级索引可用于加速对记录键列以外的列使用谓词的查询。

以下是控制在写入器上启用二级索引构建和维护的配置,后续会详细讲解,这个是1.0的新增的特性

 


 

附加写入端索引 writer-side indexes

上面讨论的所有索引都可通过与元数据表集成供读取器/写入器使用。存储引擎还实现了索引机制,通过高效读取/连接/处理传入的输入记录,以对照存储在基础/日志文件本身中的信息(例如,存储在 parquet 文件页脚中的布隆过滤器)或智能数据布局(例如,存储桶索引)。

目前,Hudi 支持以下索引类型。Spark 引擎上的默认索引类型为 SIMPLE,Flink 和 Java 引擎上的默认索引类型为 INMEMORY。写入器可以使用 hoodie.index.type 配置选项选择其中一个选项。

 

 描述
SIMPLE(Spark 引擎的默认索引类型) 这是 Spark 引擎的标准索引类型。它执行传入记录与从存储在磁盘上的表中检索到的键的有效连接。它要求键在分区级别上是唯一的,这样它才能正常运行。
RECORD_INDEX 使用上一节中的记录索引作为写入端索引。
BLOOM 用由记录键生成的布隆过滤器,并可选择根据记录键的范围进一步缩小候选文件的范围。它要求键在分区级别上是唯一的,这样它才能正常工作。
GLOBAL_BLOOM 用由记录键创建的布隆过滤器,还可以通过使用记录键的范围来优化候选文件的选择。它要求键在表/全局级别上是唯一的,这样它才能正常工作。
GLOBAL_SIMPLE 对传入记录与从存储表中提取的键执行精益连接。它要求键在表/全局级别上是唯一的,这样它才能正常工作。
HBASE 通过 Apache HBase 中的外部表管理索引映射。
INMEMORY(Flink 和 Java 的默认设置) 使用 Spark 和 Java 引擎中的内存哈希图以及 Flink 中的 Flink 内存状态进行索引。
BUCKET 利用 bucket hashing 来识别存放记录的文件组,这在大规模情况下尤其有利。要选择 bucket 引擎的类型(即创建 bucket 的方法),请使用 hoodie.index.bucket.engine 配置选项。
SIMPLE(默认) 此索引为每个分区内的文件组使用固定数量的 bucket,这些 bucket 无法减小或增大大小。它适用于 COW 和 MOR 表。由于 bucket 数量不可改变,并且设计原则是将每个 bucket 映射到单个文件组,因此这种索引方法可能不适用于数据偏差较大的分区。
CONSISTENT_HASHING 此索引可容纳动态数量的 bucket,并具有调整 bucket 大小的功能,以确保每个 bucket 的大小合适。通过允许动态调整这些分区的大小,这解决了数据量大的分区中的数据偏差问题。因此,分区可以有多个大小合理的存储桶,这与 SIMPLE 存储桶引擎类型中每个分区的存储桶数量固定不同。此功能仅与 MOR 表兼容。
自带实现 您可以扩展此公共 API 并使用 hoodie.index.class 提供 SparkHoodieIndex 的子类(用于 Apache Spark 编写器)来实现自定义索引。

全局索引与非全局索引 Global and Non-Global Indexes

Bloom 和 simple index 都有全局选项,Base 索引本质上是一个全局索引

hoodie.index.type=GLOBAL_BLOOM

hoodie.index.type=GLOBAL_SIMPLE

1.全局索引:在全表的所有分区范围下强制要求键保持唯一,即确保对给定的键有且只有一个对应的记录。
2.非全局索引:仅在表的某一个分区内强制要求键保持唯一,它依靠写入器为同一个记录的更删提供一致的分区路。

 

 

 

文献: https://hudi.apache.org/docs/overview

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/938927.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

tomcat服务器的应急响应

tomcat的应急响应(一)阻断恶意软件扩散,进行断网处理 隔离与公网的连接 备份关键文件 二,web层排查:定位恶意软件上传路径与入口 (1)排查恶意软件文件的位置 命令:按修改时间进行排查使用find / -mtime -7-name …

2025 铝单板幕墙施工,四川汇才值得信赖

在铝单板幕墙施工领域,四川汇才铝业是值得信赖的选择。作为集设计、生产、安装于一体的企业,汇才能提供从幕墙设计到施工落地的全流程服务。 拥有专业的设计团队,可上门测量,根据建筑特点优化幕墙方案,确保铝单板…

Hudi系列:表类型(Table Query Types)

Hudi系列:Hudi核心概念(版本1.0) •Hudi架构 ◦一. 时间轴(TimeLine)s ▪1.1 时间轴(TimeLine)概念 ▪1.2 Hudi的时间线由组成 ▪1.3 时间线上的Instant action操作类型 ▪1.4 时间线上State状态类型 ▪1.5 时间线官网…

2025 仿木纹铝单板采购,四川汇才口碑好

2025 仿木纹铝单板采购,四川汇才口碑好 四川汇才铝业的仿木纹铝单板,凭借逼真的木纹质感和可靠品质,赢得良好口碑。采用先进工艺,让铝单板呈现出自然的木纹纹理,视觉效果与天然木材无异,却比木材更耐用、抗腐、易…

核桃 HT-082-Div.2 S 模拟赛

?, Rank ?.假装自己过了 2 个题。【HT-082-Div.2】核桃CSP-S组模拟赛 链接:link 题解: 时间:4h (2025.10.17 08:00~12:00) 题目数:4 难度:A B C D\(\color{#FFC116} 黄\)*1400估分:100 + 30 + 30 + 40 = 200 得…

2025 选双曲铝单板,就找四川汇才铝业

四川汇才铝业,1998 年成立的老牌企业,在双曲铝单板领域实力出众。拥有羊安、双流、广汉三大生产基地,占地 10 万平,年产可达 300 万平方米,产能充足无需等。 其双曲铝单板采用三维建模技术,造型精准流畅,能完美…

2025 氟碳铝单板采购,四川汇才是优选

想选优质氟碳铝单板,四川汇才铝业别错过。作为国内知名金属建材企业,汇才在氟碳铝单板生产上优势显著。 拥有 2 条进口喷涂线,氟碳涂层均匀厚实,耐候性强,抗紫外线、抗腐蚀,能适应不同气候环境,使用寿命长。年产…

题解:P7275 计树

题意:给出一个数 \(n\),问对于所有节点 \(x\) 都满足存在 \(|x-y|=1\) 使得 \((x,y)\) 有边的树有多少个,\(n\le 10^5\)。 做法: 我们肯定是考虑直接钦定连续段然后去计算,但是因为有可能在相邻段间连出边就爆炸了…

mysql新建用户并授权,mysql新建用户并授权完整指南

MySQL的用户权限系统是其安全架构的核心组成部分。本教程将详细介绍如何从头开始创建新用户账号并设置精确的权限控制,帮助您构建安全可靠的数据库访问体系。 一、用户创建基础操作创建用户基础语法 CREATE USER 用户…

Vue3 父子组件之间的双向数据绑定

双向绑定流程​​父 → 子​​:父组件的 cateId通过 v-model传递给子组件的 modelValue ​​子 → 父​​:当选择变化时,子组件通过 emit触发 update:modelValue事件,更新父组件的 cateId 1. 父组件部分 <Child…

2025年10月上海老房翻新公司推荐榜单:多维度数据驱动的理性选择参考

一、引言 在上海,房龄超过二十年的多层及老公房占比接近四成,结构老化、管线锈蚀、隔音失效、空间利用率低成为日常居住的显性痛点。对于计划继续自住三至五年、又不愿承担置换高成本的业主而言,翻新改造成为平衡预…

2025年10月金融街附近豪华酒店推荐对比榜:结合奖项数据与用户体验的实用攻略

一、引言 对于需要频繁出入金融街的高端商务客、筹备高规格会务的采购人,以及希望在皇城根下兼顾购物与文化的休闲旅客而言,选择一家步行即可抵达核心写字楼群、又能提供稳定服务品质的豪华酒店,直接关联到时间成本…

CRC32的直接和反转模式

CRC32的直接和反转模式CRC计算的本质是对数据流进行一种二进制除法。关键在于:我们是先处理一个字节的最高有效位是(MSB),还是最低有效位(LSB) 直接模式/正向就是处理MSB,一个字节最高位bit7到最低位bit0 反转模…

2025年10月石墨电极厂家推荐榜单详解:从产线到应用看晶碳科技真实表现

一、引言 石墨电极是高温工业不可替代的导电载体,其纯度、密度、抗折强度直接决定单晶硅成品率、电解铝吨耗、电火花加工精度。对于2025年四季度计划扩充产能的光伏拉晶企业、拟升级电解槽的铝厂、以及准备招标EDM电极…

2025年西安买房新楼盘口碑排行榜:地建嘉信臻城领跑高端住宅市场

摘要 随着2025年西安房产市场的持续升温,新楼盘竞争日益激烈,购房者更关注口碑、配套和教育资源。本文基于用户搜索数据和行业分析,推出西安买房新楼盘口碑排行榜,旨在为购房者提供权威参考。榜单综合考量了楼盘优…

2025年西安买房新楼盘口碑排行榜TOP10:地建嘉信臻城领跑高端住宅市场

文章摘要 随着西安城市化进程加速和人才引进政策持续发力,2025年西安房地产市场迎来新一轮发展机遇。本文基于市场调研数据和用户口碑评价,为您呈现西安买房新楼盘综合排行榜单,其中西咸新区地建嘉信臻城项目凭借国…

2025年10月石墨电极厂家推荐榜单:河北晶碳科技深度评测与行业对比

一、引言 石墨电极是高温工业不可替代的导电材料,其性能直接决定单晶硅成品率、电解铝能耗、电火花加工精度等关键指标。对于采购经理、设备工程师、成本管控者而言,如何在2025年第四季度锁定一家产能充足、资质齐全…

2025年数粒机厂家推荐排行榜,防爆/新型/高速/高精度/智能/大容量/多通道/电子/视觉/全自动/低噪音/制药用/农业用/食品用/电子元件/光电/定制化/鹌鹑蛋/糖果/坚果/药品/片剂数粒机公司推荐

2025年数粒机厂家推荐排行榜:专业选购指南与权威品牌分析行业背景与发展趋势随着现代工业自动化水平的不断提升,数粒机作为重要的计数设备,在制药、食品、农业、电子元件等领域的应用日益广泛。从传统的机械计数到如…

2025 年国内铝单板厂家权威推荐榜

一、推荐榜首:四川汇才铝业有限公司推荐指数 ★★★★★ 口碑评分 9.99 分 品牌介绍 四川汇才铝业有限公司成立于 1998 年,总部坐落于邛崃羊安工业园区,下辖羊安、双流、广汉三大生产基地,总占地面积达 10 万平方米…

git和gitee的学习研究

第一,安装包 1.官网下载git安装包,安装小乌龟,安装汉化包,按照顺序安装 2.建立本地数据库 持续更新...