合作机构:阿里云 / 腾讯云 / 亚马逊云 / DreamHost / NameSilo / INWX / GODADDY / 百度统计
Apache Paimon是一种多功能的流数据湖平台,支持高速数据摄取、变更数据跟踪和实时分析,它为读/写操作提供灵活的架构,并与各种计算引擎(如Apache Flink、Apache Hive、Apache Spark和Trino)集成。Paimon利用列式文件存储和LSM树结构进行高效的数据更新和查询。它提供连接器,用于消息队列、OLAP系统和批量存储的统一存储。Paimon的表抽象可以无缝的批处理和流处理执行模式,用于数据处理。
图1 Apache Paimon架构图
Apache Paimon作为一个数据湖平台,目前具有以下几个主要特点:(1)大规模实时更新;(2)数据表局部更新;(3)流批一体读写。
- 大规模实时更新
Paimon 是一种新颖的数据存储系统,它结合了湖存储、LSM 和列式格式(如ORC、Parquet)等多种技术,为湖存储带来了大规模实时更新能力。其中,LSM 数据结构的追加写能力是 Paimon 实现高性能的关键。Paimon 的设计使得它可以在大规模的数据输入场景中提供出色的性能表现,同时支持快速的查询和分析操作。其特点如下:
- 数据表局部更新
在数据仓库的业务场景中,宽表数据模型是非常常见的。它是指将业务主体相关的指标、维表和属性关联在一起的模型表,也可以泛指将多个事实表和多个维度表相关联到一起形成的宽表。这种模型能够帮助我们更好地理解业务数据,提高数据分析的效率。Paimon开发了一个 Partial-Update 合并引擎。它可以根据相同的主键实时合并多条流,形成 Paimon 的一张大宽表。而且,借助 它里面的LSM 树的延迟 Compaction 机制,我们可以用较低的成本完成合并,从而提高了数据处理的效率。举例来说:当收到主键为1的以下三条数据后,它最终会合并成合并的一条数据。
## 输入
?<1, 23.0, 10, NULL>
?<1, NULL, NULL, 'This is a book'>
?<1, 25.2, NULL, NULL>
## 输出
<1, 25.2, 10, 'This is a book'>
TOP