赞
踩
Apache Paimon的架构:
如上架构所示:
读/写:Paimon 支持多种读/写数据和执行 OLAP 查询的方式。
生态系统:除了Apache Flink之外,Paimon还支持Apache Hive、Apache Spark、Trino等其他计算引擎的读取。
内部的:
对于 Apache Flink 这样的流引擎,通常有三种类型的连接器:
Paimon 提供表抽象。它的使用方式与传统数据库没有什么区别:
一张表的所有文件都存储在一个基本目录下。 Paimon 文件以分层方式组织。下图说明了文件布局。从快照文件开始,Paimon 读者可以递归地访问表中的所有记录。
所有快照文件都存储在快照目录中。
快照文件是一个 JSON 文件,包含有关此快照的信息,包括
快照捕获表在某个时间点的状态。用户可以通过最新的快照来访问表的最新数据。通过时间旅行,用户还可以通过较早的快照访问表的先前状态。
所有清单列表和清单文件都存储在清单目录中。
清单列表是清单文件名的列表。
清单文件是包含有关 LSM 数据文件和更改日志文件的更改的文件。例如对应快照中创建了哪个LSM数据文件、删除了哪个文件。
数据文件按分区分组。目前,Paimon 支持使用 orc(默认)、parquet 和 avro 作为数据文件格式。
Paimon 编写器使用两阶段提交协议以原子方式将一批记录提交到表中。每次提交在提交时最多生成两个快照。
对于任意两个同时修改表的写入者,只要他们不修改同一分区,他们的提交就可以并行发生。如果他们修改同一分区,则仅保证快照隔离。也就是说,最终表状态可能是两次提交的混合,但不会丢失任何更改。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。