粗读Apache Paimon 的基本概念及其组成结构
文章目录
- 一、Paimon的基本概念
- (一)快照
- (二)分区
- (三)分桶
- (四)一致性保证
- 二、Paimon的组成结构
- (一)文件布局
- (二)存储结构
- (三)读写方式
- (四)生态系统

一、Paimon的基本概念
(一)快照
想象一下,你正在翻看一本相册,每一张照片都记录了一个特定的时刻。在Paimon中,快照就是数据表的“照片”,它记录了表在某一特定时间的状态。通过快照,你可以查看表的最新数据,或者像穿越时空一样,回到过去,查看表的旧版本。
(二)分区
你是否曾在整理文件时,将它们分门别类地放入不同的文件夹?Paimon中的分区概念与此类似。它允许我们根据某些特定的列值(比如日期、城市或部门)将数据表分割成多个部分,这样我们就可以更高效地管理和查询数据。
(三)分桶
想象一下,你有一个大箱子,里面装满了各种颜色的球。为了更容易找到特定颜色的球,你决定将它们分成几个小盒子。在Paimon中,分桶就是将数据表或分区进一步细分为更小的部分,以便更有效地组织和查询数据。每个桶的大小建议控制在1GB左右,以避免过多的小文件影响读取性能。
(四)一致性保证
在Paimon中,写入数据的过程就像是在进行一场接力赛。为了保证交接棒不掉落,Paimon使用了一种叫做两阶段提交的协议。这样,即使多个写入操作同时进行,只要它们不影响到同一个桶,它们的操作就能像接力赛一样有序进行;如果影响到同一个桶,则会保证至少有一个快照级别的隔离。
二、Paimon的组成结构
(一)文件布局
就像一本书有目录一样,Paimon中的数据也是有序组织的。所有的文件都存放在一个基本目录下,并且按照一定的层次结构排列。
- 快照文件(
SnapshotFiles):记录了表在特定时间点的状态。 - 清单文件(
ManifestFiles):存储了所有清单列表和清单文件,这些文件包含了LSM数据文件和更改日志文件的信息。 - 数据文件(
DataFiles):根据分区和桶进行分组,每个桶都包含一个LSM树及其变更日志文件。Paimon支持orc、parquet和avro这三种数据文件格式。 - LSM树(
LSMTrees):Paimon使用LSM树来组织文件,这种结构将文件分成多个有序的段。
(二)存储结构
在Paimon的底层,数据以列式格式存储在文件系统或对象存储上,并利用LSM树结构来支持大量的数据更新和快速查询。
(三)读写方式
- 读取:你可以从历史快照、最新的偏移量,或者以混合方式读取增量快照。
- 写入:
Paimon支持从数据库变更日志(CDC)进行流式同步,或者从离线数据进行批量插入/覆盖。
(四)生态系统
Paimon不仅与Apache Flink兼容,还支持Apache Hive、Apache Spark、Trino等其他计算引擎的读取。
相关文章:
粗读Apache Paimon 的基本概念及其组成结构
文章目录 一、Paimon的基本概念(一)快照(二)分区(三)分桶(四)一致性保证 二、Paimon的组成结构(一)文件布局(二)存储结构(…...
c++调用 c# dll 通过 P/Invoke (详细避坑)
项目场景: VS2022 .NET8 , 项目应用的库需要支持AOT,不支持AOT的库看这里 我的c项目很奇怪,如果使用 clr 调用c# dll,会有很多报错,所以使用 P/Invoke方法,这个方法不会有任何奇怪的报错 解决方案 示例…...
李春葆《数据结构》——图相关代码
邻接矩阵结构体: #define MAX<最大结点个数> #define INF 32765 //定义无穷 typedef struct{int no;//顶点的编号;InfoType info;//顶点的其他信息 }vertexType;//顶点的类型 typedef struct{int edges[MAX][Max];//邻接矩阵数组 int vertexTy…...
Linux驱动开发第2步_“物理内存”和“虚拟内存”的映射
“新字符设备的GPIO驱动”和“设备树下的GPIO驱动”都要用到寄存器地址,使用“物理内存”和“虚拟内存”映射时,非常不方便,而pinctrl和gpio子系统的GPIO驱动,非常简化。因此,要重点学习pinctrl和gpio子系统下的GPIO驱…...
告别多品牌乱战,吉利开始觉醒
科技新知 原创作者丨思原 编辑丨蕨影 2007年,是国内自主品牌汽车萌芽的一年,当时行业普遍奉行“多生孩子好打架”战略,吉利也是在这样的背景下发布了《宁波宣言》,奠定了之后十多年的发展主导思想。 然而,新能源的快…...
Target-absent Human Attention
Abstract 预测人类注视行为对于构建能够预测用户注意力的人机交互系统非常重要。已经开发出计算机视觉模型来预测人们在搜索目标物体时的注视点。但当目标不存在于图像中时,又该如何处理呢?同样重要的是要了解当人们找不到目标时,他们如何进行搜索,以及何时停止搜索。在本文…...
<QNAP 453D QTS-5.x> 日志记录:在 Docker 中运行的 Flask 应用安装 自签名 SSL 证书 解决 Chrome 等浏览器证书安全
原因:Chrome 不信任 ssc 证书 使启用了 HTTPS,即使有使用 自签名证书 (self-signed certificate 非由可信的证书颁发机构 【CA,Certificate Authority】签发的)。浏览器 Chrome 默认不信任自签名证书,也会报 NET::ERR_…...
通过huggingface-cli下载Hugging Face上的公开数据集或模型至本地
1. 获取 Access Tokens 在使用huggingface-cli命令下载之前需要先去官网获取 Access Tokens: 获取tokens的官网链接:https://huggingface.co/settings/tokens点击新增 token: 然后选择 write 权限: 最后,这个 Access…...
论文阅读——Intrusion detection systems using longshort‑term memory (LSTM)
一.基本信息 论文名称:Intrusion detection systems using longshort‑term memory (LSTM) 中文翻译:基于长短期记忆(LSTM)的入侵检测系统 DOI:10.1186/s40537-021-00448-4 作者:FatimaEzzahra Laghrissi1* , Samira Douzi2*, Kha…...
SparkSQL的执行过程:从源码角度解析逻辑计划、优化计划和物理计划
SparkSQL的执行过程可以分为以下几个阶段:从用户的SQL语句到最终生成的RDD执行,涵盖逻辑计划、优化计划和物理计划。以下是详细的源码角度解析: 1. 解析阶段(Parsing) SQL语句解析:Spark 使用 Catalyst 引…...
Leetcode打卡:新增道路查询后的最短距离II
执行结果:通过 题目:3244 新增道路查询后的最短距离II 给你一个整数 n 和一个二维整数数组 queries。 有 n 个城市,编号从 0 到 n - 1。初始时,每个城市 i 都有一条单向道路通往城市 i 1( 0 < i < n - 1&…...
Spring Web入门练习
加法计算器 约定前后端交互接⼝ 约定 "前后端交互接⼝" 是进⾏ Web 开发中的关键环节. 接⼝⼜叫 API(Application Programming Interface), 我们⼀般讲到接⼝或者 API,指的都是同⼀个东西. 是指应⽤程序对外提供的服务的描述, ⽤于交换信息…...
计算机毕业设计 | SpringBoot+vue汽车资讯网站 汽车购买咨询管理系统(附源码+论文)
1,绪论 1.1 研究背景 随着计算机技术的发展以及计算机网络的逐渐普及,互联网成为人们查找信息的重要场所,二十一世纪是信息的时代,所以信息的管理显得特别重要。因此,使用计算机来管理汽车资讯网站的相关信息成为必然…...
stm32下的ADC转换(江科协 HAL版)
十二. ADC采样 文章目录 十二. ADC采样12.1 ADC的采样原理12.2 STM32的采样基本过程1.引脚与GPIO端口的对应关系2.ADC规则组的四种转换模式(**)2.2 关于转换模式与配置之间的关系 12.3 ADC的时钟12.4 代码实现(ADC单通道 & ADC多通道)1. 单通道采样2. 多通道采样 19.ADC模数…...
解决IntelliJ IDEA的Plugins无法访问Marketplace去下载插件
勾选Auto-detect proxy setting并填入 https://plugins.jetbrains.com 代理URL,可以先做检查连接:...
react 如何修改弹出的modal的标题
原来标题的样子: 修改为: 实现方式: <Modal title<span>股价趋势/{this.state.pccode}</span> visible{this.state.isPriceModalOpen} style{{ top: 20 }} width{1320} height{400} footer{null} onCancel{()>this.hideMo…...
C#中的二维数组的应用:探索物理含义与数据结构的奇妙融合
在C#编程中,二维数组(或矩阵)是一种重要的数据结构,它不仅能够高效地存储和组织数据,还能通过其行、列和交叉点(备注:此处相交处通常称为“元素”或“单元格”,代表二维数组中的一个…...
HTML5拖拽API学习 托拽排序和可托拽课程表
文章目录 前言拖拽API核心概念拖拽式使用流程例子注意事项综合例子🌰 可拖拽课程表拖拽排序 前言 前端拖拽功能让网页元素可以通过鼠标或触摸操作移动。HTML5 提供了标准的拖拽API,简化了拖放操作的实现。以下是拖拽API的基本使用指南: 拖拽…...
内容补充页(相关公式解释)
from 学习日记_20241117_聚类方法(高斯混合模型) 学习日记_20241117_聚类方法(高斯混合模型) 公式 P ( Z k ) π k P(Zk) \pi_k P(Zk)πk 在高斯混合模型 (GMM) 中,公式 P ( Z k ) π k P(Zk) \pi_k P(Zk…...
vue中动态渲染静态图片资源
不报错且f12查看元素的时候,显示的src说明已经渲染到html的src上,但是就是不显示在页面上 原因 在vue上,动态渲染静态图片资源(比如从assets文件夹加载的图片)需要注意打包工具对静态资源的解析方式 由于vue2的脚手…...
从`find -mtime`到`find -newermt`:Linux文件时间查找的进阶玩法与避坑指南
从find -mtime到find -newermt:Linux文件时间查找的进阶玩法与避坑指南 在Linux系统管理中,文件查找是开发者和运维工程师的日常高频操作。当我们需要追踪最近修改的配置文件、清理过期日志或备份特定时间段的文档时,find命令的时间参数便成为…...
ChatGPT 2026不是升级,是重构:Transformer-XL²架构、128K动态上下文、本地化模型热插拔——你还在用2023版?这5个信号说明你已被淘汰
更多请点击: https://intelliparadigm.com 第一章:ChatGPT 2026:一场从架构内核出发的范式革命 ChatGPT 2026 并非简单的能力叠加,而是以「动态稀疏混合专家(Dynamic Sparse MoE)」为核心重构推理路径&…...
告别导入报错!手把手教你用Navicat把Excel数据完美搬进MySQL(含字段超限处理)
从Excel到MySQL:Navicat数据迁移全流程实战指南 数据迁移是开发者和数据分析师日常工作中的高频需求。想象一下这样的场景:市场部门发来一份包含3000条客户信息的Excel表格,需要快速导入到测试环境的MySQL数据库中进行功能验证;或…...
第一份工作选大厂还是创业公司?5年后的差距令人深思
对于刚刚走出校门的软件测试工程师而言,第一份工作的选择,如同一场没有回头路的开局落子。它不仅仅关乎起薪的高低,更将深刻塑造你的技术视野、职业习惯和未来五年的成长曲线。五年,足以让一个初出茅庐的新人成长为独当一面的技术…...
ArchivePasswordTestTool:5分钟掌握加密压缩包密码恢复的智能方案
ArchivePasswordTestTool:5分钟掌握加密压缩包密码恢复的智能方案 【免费下载链接】ArchivePasswordTestTool 利用7zip测试压缩包的功能 对加密压缩包进行自动化测试密码 项目地址: https://gitcode.com/gh_mirrors/ar/ArchivePasswordTestTool 你是否曾因遗…...
告别MQTT!用Python Socket自建轻量数据通道,ESP32直连MySQL并更新网页状态
告别MQTT!用Python Socket自建轻量数据通道,ESP32直连MySQL并更新网页状态 在物联网项目开发中,MQTT协议因其轻量级和发布-订阅模式而广受欢迎。然而,当我们需要更精细地控制数据传输流程、减少中间件依赖或优化资源使用时&#x…...
3个战略理由选择ES-Client作为您的Elasticsearch管理平台
3个战略理由选择ES-Client作为您的Elasticsearch管理平台 【免费下载链接】es-client elasticsearch客户端,issue请前往码云:https://gitee.com/qiaoshengda/es-client 项目地址: https://gitcode.com/gh_mirrors/es/es-client 在当今数据驱动的业…...
NotebookLM播客化功能上线即爆火(2024Q2内部灰度测试TOP3功能首次公开)
更多请点击: https://intelliparadigm.com 第一章:NotebookLM文档播客化功能详解 NotebookLM 的文档播客化(Doc-to-Podcast)功能将静态文本内容智能转化为自然流畅的语音叙述,支持多角色配音、语速调节与上下文感知停…...
终极指南:如何快速筛选高质量免费股票资源的5大核心标准
终极指南:如何快速筛选高质量免费股票资源的5大核心标准 【免费下载链接】awesome-stock-resources :city_sunrise: A collection of links for free stock photography, video and Illustration websites 项目地址: https://gitcode.com/gh_mirrors/aw/awesome-s…...
初识java(三):运算符
目录 一:什么是运算符 二:算术运算符 1. 基本四则运算符:加减乘除模( - * / %) 2.增量运算符 - * % 3. ⾃增/⾃减运算符 -- 三:关系运算符 四:逻辑运算符(重点) 1.逻辑与&& 2.逻辑 || …...
