GreptimeDB v0.12.0 夜间版本技术解析:性能优化与功能增强
GreptimeDB 是一款开源的分布式时序数据库,专注于处理大规模时序数据场景。它结合了时序数据库的高效存储和传统关系型数据库的易用性,支持多种查询语言和协议,包括 SQL、PromQL 等。本次发布的 v0.12.0 夜间版本带来了多项性能优化和新功能增强。
核心性能优化
本次版本在多个层面进行了性能优化,显著提升了数据库的处理能力。在 KV 存储后端实现中,通过重构 pgkv 使用 prepare_cache,获得了约 10% 的性能提升。对于 LastNonNullIter 迭代器的优化更是带来了惊人的 10 倍性能提升,这对于处理稀疏时序数据特别有价值。
在查询处理方面,窗口排序操作现在支持对字段和时间索引的过滤条件,这大大提高了特定场景下的查询效率。同时,通过优化正则表达式过滤器的处理,避免了不必要的计算开销。
存储引擎改进
存储层引入了多项重要改进。Puffin 存储引擎现在支持元数据查询方法,并调整了暂存器的回收策略,这些改动优化了存储空间利用率和查询性能。新的暂存器通知机制能够收集相关指标,为系统监控和调优提供了更多数据支持。
查询功能增强
查询功能方面,PromQL 查询引擎获得了多项改进。现在支持对数据库名称的别名匹配,改进了标签值的转义处理,并增加了对不存在标签过滤条件的忽略处理。同时新增了系列计数指标,方便监控查询负载。
特别值得注意的是,现在支持在表变更操作中修改跳过索引(skipping index),这为动态调整索引策略提供了灵活性。此外,查询上下文现在包含快照序列号字段,为分布式查询提供了更好的隔离性。
协议与兼容性
在协议支持方面,MySQL 和 PostgreSQL 协议现在支持服务器端保持连接功能,这减少了频繁建立连接的开销。同时移除了已弃用的 datetime 类型,统一使用 timestamp 类型,简化了类型系统。
监控与管理
监控能力得到增强,新增了暂存器指标收集功能,可以更好地监控存储引擎的状态。PromQL 查询引擎现在会记录系列计数指标,帮助管理员了解查询负载情况。
总结
GreptimeDB v0.12.0 夜间版本通过多方面的优化和功能增强,进一步提升了系统的性能和可用性。从存储引擎的底层改进到查询功能的丰富,再到监控能力的完善,这些变化共同构成了一个更强大、更稳定的时序数据库解决方案。对于需要处理大规模时序数据的应用场景,这个版本值得关注和评估。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0218
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0139
uni-appA cross-platform framework using Vue.jsJavaScript09
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
SwanLab⚡️SwanLab - an open-source, modern-design AI training tracking and visualization tool. Supports Cloud / Self-hosted use. Integrated with PyTorch / Transformers / LLaMA Factory / veRL/ Swift / Ultralytics / MMEngine / Keras etc.Python00
tiny-universe《大模型白盒子构建指南》:一个全手搓的Tiny-UniverseJupyter Notebook03