Apache Kvrocks 2.12.0版本发布:增强数据操作与稳定性
Apache Kvrocks作为一款高性能的键值存储数据库,基于RocksDB构建,兼容Redis协议,旨在提供低成本、高可靠性的存储解决方案。近日,Kvrocks发布了2.12.0版本,带来了多项重要功能增强和稳定性改进。
核心功能增强
本次更新引入了多个实用的新命令,显著提升了数据操作的灵活性:
-
HSETEXPIRE命令:这是一个组合命令,允许在设置哈希字段的同时指定过期时间,将原本需要两个命令的操作合并为一个原子操作,既提高了效率又保证了数据一致性。
-
KMETADATA命令:新增的命令可以获取键的元数据信息,为开发者提供了更丰富的键状态查询能力,便于监控和调试。
-
POLLUPDATES命令增强:现在支持RESP输出格式,提供了更灵活的数据返回方式选择,适应不同场景下的数据处理需求。
-
LASTSAVE命令改进:新增了对iso8601时间格式的支持,使时间显示更加标准化,便于日志分析和监控系统集成。
性能与稳定性优化
2.12.0版本在性能和稳定性方面做出了多项重要改进:
-
脚本执行优化:移除了EVAL、EVALSHA和FCALL命令的全局锁,显著提升了脚本执行的并发性能,同时允许阻塞命令在脚本中使用,增强了脚本功能的灵活性。
-
关键修复:解决了SETRANGE命令中传递负偏移量导致服务器崩溃的严重问题,提高了系统的健壮性。
-
集群功能完善:修复了槽位迁移过程中禁止槽范围清理的bug,确保了集群操作的可靠性。
-
布隆过滤器改进:修复了布隆过滤器中可能导致无效访问的问题,增强了数据查询的稳定性。
系统监控与管理
新版本在系统监控和管理方面也有所增强:
-
INFO命令扩展:现在可以指定多个信息段进行查询,并新增了rocksdb_version、server_time_usec等关键信息字段,为系统监控提供了更全面的数据。
-
配置灵活性提升:允许配置RocksDB的最大压缩字节数,用户可以根据硬件特性和工作负载进行更精细化的性能调优。
-
关闭流程优化:改进了关机消息显示,现在会明确显示信号名称,便于问题诊断。
未来展望
虽然2.12.0版本中尚未包含,但社区已经在积极开发TDIGEST数据结构支持,包括TDIGEST.CREATE、TDIGEST.INFO、TDIGEST.ADD等命令的实现。这些功能将为统计分析和近似计算提供强大支持,值得期待在后续版本中出现。
总结
Apache Kvrocks 2.12.0版本通过引入新命令、优化现有功能和修复关键问题,进一步提升了系统的功能性、性能和稳定性。特别是HSETEXPIRE和KMETADATA等新命令的加入,为开发者提供了更丰富的操作选项。对于追求高性能、低成本键值存储解决方案的用户来说,这个版本值得升级。
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 StartedRust0172
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook097
Step-3.7-FlashStep-3.7-Flash是一个拥有 1980 亿参数的稀疏混合专家(MoE)视觉语言模型,由 1960 亿参数的语言主干网络和 18 亿参数的视觉编码器组合而成,具备原生图像理解能力。Python00
BitCPM-CANN-8BBitCPM-CANN 是首个基于华为昇腾 NPU 原生构建的端到端 1.58 位(三值化)大语言模型训练系统。该系统将量化感知训练(QAT)集成到 Megatron-LM 框架中,并结合 MindSpeed 加速,覆盖了从自定义三值算子到基于昇腾 910B 的分布式并行训练的完整训练栈。Python00
MiniCPM5-1BMiniCPM5-1B,这是 MiniCPM5 系列的首款模型。它是一个专为端侧、本地部署和资源受限场景打造的 10 亿参数密集型 Transformer 模型,达到了 10 亿参数级开源模型的 SOTA 水平Jinja00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0239