概念 - 概述

概述

apache paimin的架构


image.png

如上图所示架构:
读/写: Paimon支持多种读取/写入数据和OLAP查询的方式.

  • 对于读,支持消费数据
    • 从历史快照(批量模式下)获取
    • 从最新的偏移量(在流模式下)开始,或者
    • 以一种混合的方式读取增量快照。
  • 对于写,支持
    • 从数据库变更日志(CDC)获取流式同步数据
    • 从离线数据进行批量插入/覆盖操作。

生态:除了 Apache Flink 之外,Paimon 还支持通过诸如 Apache Hive、Apache Spark 和 Trino 等其他计算引擎进行读取操作。

内在:

  • 在内部实现层面,Paimon 将列式文件存储在文件系统/对象存储中。
  • 该文件的元数据保存在清单文件中,从而实现了大规模存储和跳数功能。
  • 对于主键表而言,采用 LSM 树结构来支持大量的数据更新以及高性能查询。

统一存储

对于像 Apache Flink 这样的流处理引擎而言,通常会有三种类型的连接器:

  • 消息队列,例如 Apache Kafka,它在该流水线的源阶段和中间阶段均有应用,以确保延迟保持在数秒以内。
  • OLAP 系统,例如 ClickHouse,它以流式方式接收处理后的数据,并为用户的即席查询提供服务。
  • 批处理存储(例如 Apache Hive),它支持传统批处理的各种操作,包括 INSERT OVERWRITE 操作。

Paimon 提供了表抽象功能。其使用方式与传统数据库并无不同:

  • 在批处理执行模式下,它类似于一个 Hive 表,并支持批处理 SQL 的各种操作。查询它以查看最新的快照。
  • 在流式执行模式下,它就像一个消息队列。查询它就像查询消息队列中的流变更日志,其中历史数据永远不会过期。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容