Apache Pinot 1.3.0 发布:多阶段查询引擎增强与时间序列分析能力突破
引言
Apache Pinot 是一个开源的分布式实时分析数据库,专为低延迟、高吞吐量的分析查询而设计。它能够处理大规模数据集,并提供亚秒级的查询响应时间,非常适合实时分析、运营监控和用户行为分析等场景。最新发布的 1.3.0 版本带来了多项重要改进,特别是在多阶段查询引擎和时间序列分析能力方面的突破。
多阶段查询引擎的显著增强
1.3.0 版本在多阶段查询引擎方面进行了多项优化,显著提升了查询性能和功能完备性。
查询计划重用机制
新版本引入了跨阶段的查询计划重用机制,通过将查询计划划分为多个阶段,并在这些阶段之间重用计算结果,减少了重复计算的开销。这种机制特别优化了 MailboxSendOperator 和 MailboxReceiveOperator 之间的数据传输,将阶段连接转化为有向无环图(DAG)结构,提高了执行效率。
执行计划可视化
新增的 Segment Plan 功能为多阶段查询提供了详细的执行计划展示,包括物理操作符的具体信息。通过新的 ExplainPlanNode,用户可以更清晰地了解查询执行过程,便于性能调优和问题排查。
性能优化
数据块的序列化和反序列化性能得到了显著提升,通过减少内存分配和拷贝操作,实现了1-3倍的吞吐量提升。这对于处理大规模数据集时的GC延迟问题有显著改善。
功能增强
- 新增了对时间戳类型的加减运算支持
- 优化了 DISTINCT 操作符在 IN 子句中的处理
- 支持时间戳索引的使用
- 增加了多态标量比较函数的支持
- 优化了 MergeEqInFilterOptimizer 的哈希计算
实验性时间序列查询引擎
1.3.0 版本引入了一个实验性的时间序列查询引擎,这是本次发布的重要亮点之一。
设计理念
传统的时间序列分析在 Pinot 中需要通过 SQL 实现,存在一定的局限性。新的时间序列引擎采用插件化架构,支持多种时间序列查询语言(如 PromQL、M3QL)的集成,专门为时间序列数据分析优化。
核心特性
- 插件化查询语言支持:通过 SPI 模块,可以灵活集成不同的时间序列查询语言
- 专用时间序列操作符:支持实现特定于时间序列分析的操作函数
- 序列化数据处理:优化了时间序列数据的处理方式,相比传统的行式处理更高效
技术实现
引擎重用了 Pinot 现有的多阶段查询引擎的基础设施,包括查询调度器、分发器和通信机制,同时将语言解析器和计划器保持为可插拔模块。这种设计既保证了性能,又提供了扩展灵活性。
数据库查询配额管理
新版本引入了数据库级别的查询配额控制机制,为多租户环境下的资源管理提供了更细粒度的控制。
配额配置
- 默认配额通过集群配置设置
- 支持针对特定数据库的配额覆盖
- 配额动态调整机制,根据活跃 broker 数量自动分配
管理接口
提供了 REST API 用于配额设置和查询,管理员可以轻松管理不同数据库的查询资源限制。配额更新通过 ZooKeeper 通知机制实时生效,确保配置变更的及时性。
二进制工作负载调度器
针对混合工作负载场景,新版本引入了 BinaryWorkloadScheduler,将查询分为两类进行差异化调度:
- 主要工作负载:生产环境关键查询,采用无限制的FCFS调度
- 次要工作负载:包括临时查询、调试工具等,施加并发查询数、线程数等限制
这种设计有效防止了资源密集型查询影响核心业务查询的稳定性。
游标支持与分页查询
1.3.0 版本新增了游标支持,使客户端能够分批处理大型查询结果,降低内存需求。主要特性包括:
- 新增查询API支持分页参数
- 结果存储和检索接口
- 支持自定义的序列化和存储实现
这对于需要分页展示结果的应用程序特别有用,如数据表格或图表展示场景。
功能增强与安全改进
新增函数支持
- URL处理函数:包括URL解析、编码解码、参数提取等丰富功能
- 地理空间函数:支持GeoJSON格式的地理数据处理
- 数学函数:新增整数除法、模运算、最大公约数等实用函数
安全增强
- 强制每日SSL证书重新加载
- 完善TLS配置支持
- 修复多个安全问题
- 改进权限控制和访问管理
总结
Apache Pinot 1.3.0 版本在多阶段查询引擎、时间序列分析、资源管理和安全性等方面都有显著进步。特别是实验性时间序列引擎的引入,为监控和可观测性场景提供了更专业的支持。这些改进使 Pinot 在实时分析领域的竞争力进一步提升,为处理大规模数据分析任务提供了更强大、更灵活的工具集。
对于现有用户,建议重点关注多阶段查询引擎的优化和新函数支持;对于考虑采用 Pinot 的用户,1.3.0 版本增强的时间序列处理能力值得特别关注。随着这些新特性的稳定和成熟,Pinot 在实时分析生态系统中的地位将更加巩固。
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
unified-cache-managementUnified Cache Manager(推理记忆数据管理器),是一款以KV Cache为中心的推理加速套件,其融合了多类型缓存加速算法工具,分级管理并持久化推理过程中产生的KV Cache记忆数据,扩大推理上下文窗口,以实现高吞吐、低时延的推理体验,降低每Token推理成本。Python03
MiniCPM-V-4_5MiniCPM-V 4.5 是 MiniCPM-V 系列中最新且功能最强的模型。该模型基于 Qwen3-8B 和 SigLIP2-400M 构建,总参数量为 80 亿。与之前的 MiniCPM-V 和 MiniCPM-o 模型相比,它在性能上有显著提升,并引入了新的实用功能Python00
HunyuanWorld-Mirror混元3D世界重建模型,支持多模态先验注入和多任务统一输出Python00
MiniMax-M2MiniMax-M2是MiniMaxAI开源的高效MoE模型,2300亿总参数中仅激活100亿,却在编码和智能体任务上表现卓越。它支持多文件编辑、终端操作和复杂工具链调用Python00
Spark-Scilit-X1-13B科大讯飞Spark Scilit-X1-13B基于最新一代科大讯飞基础模型,并针对源自科学文献的多项核心任务进行了训练。作为一款专为学术研究场景打造的大型语言模型,它在论文辅助阅读、学术翻译、英语润色和评论生成等方面均表现出色,旨在为研究人员、教师和学生提供高效、精准的智能辅助。Python00
GOT-OCR-2.0-hf阶跃星辰StepFun推出的GOT-OCR-2.0-hf是一款强大的多语言OCR开源模型,支持从普通文档到复杂场景的文字识别。它能精准处理表格、图表、数学公式、几何图形甚至乐谱等特殊内容,输出结果可通过第三方工具渲染成多种格式。模型支持1024×1024高分辨率输入,具备多页批量处理、动态分块识别和交互式区域选择等创新功能,用户可通过坐标或颜色指定识别区域。基于Apache 2.0协议开源,提供Hugging Face演示和完整代码,适用于学术研究到工业应用的广泛场景,为OCR领域带来突破性解决方案。00- HHowToCook程序员在家做饭方法指南。Programmer's guide about how to cook at home (Chinese only).Dockerfile014
Spark-Chemistry-X1-13B科大讯飞星火化学-X1-13B (iFLYTEK Spark Chemistry-X1-13B) 是一款专为化学领域优化的大语言模型。它由星火-X1 (Spark-X1) 基础模型微调而来,在化学知识问答、分子性质预测、化学名称转换和科学推理方面展现出强大的能力,同时保持了强大的通用语言理解与生成能力。Python00- PpathwayPathway is an open framework for high-throughput and low-latency real-time data processing.Python00