Pulsar的一个常见用例是存储事件数据流。 通常,事件数据由预定义字段构成。 用户查询已存储在Pulsar主题中的现有数据具有巨大的价值。 通过内嵌的schema registry,结构化数据可以存储在Pulsar中,并允许通过SQL语言查询该数据。
By leveraging Presto, we have created a method for users to be able to query structured data stored within Pulsar in a very efficient and scalable manner. 我们将在下面的性能部分讨论为什么Pulsar可以做到如此高效和可扩展。
Pulsar SQL的核心是Presto Pulsar连接器,它允许Presto worker从Pulsar查询数据。
性能
Pulsar查询性能非常高效且可高度扩展的原因是Pulsar的分层分片存储架构。
Pulsar中的主题存储为 Apache Bookkeeper 中的segments。 每个主题segment 也被复制到可配置(默认3个)Bookkeeper节点,允许高吞吐量的并发读取。 在Presto Pulsar连接器中,我们直接从Bookkeeper读取数据,以充分利用Pulsar基于segment 的架构。 因此,Presto worker可以从水平可伸缩的bookkeeper 节点并发读取。
当前内容版权归 Apache Pulsar 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 Apache Pulsar .