
一年又过去了,感谢你和 NebulaGraph 一起又走过一个春夏秋冬。在这 365 天里,我们一起见证了 214 个 commit 带来的 NebulaGraph 3 个中版本的上线,它们分别是 v3.4.0、v3.5.0 和 v 3.6.0;除了内核经历了 3 个中版本的迭代之外,NebulaGraph 在 2023 年也迎来一大波新周边工具,以及已有周边工具的大更新。
由于篇幅的关系,现在我们来相对克制地了解下这 3 个版本和周边工具。
一直以来,稳定性和高性能在 NebulaGraph 的产品规划中都是重中之重。今年,NebulaGraph 更是把 稳定性作为第一优先级:在功能上,引入了 Memory Tracker 功能(该功能开发者分享了一篇从原理讲起的文章 《内存管理实践之 Memory Tracker》);在测试上,进行了多轮的覆盖测试,同时引入了 fuzzer 等测试工具及方法,对 NebulaGraph 做了一次彻底的 “全身体检 ",也纠正和限制了一些不符合预期的行为。
在整体上,从 v3.3.0 到 v3.6.0,NebulaGraph 的稳定性有了明显的提升;而最新的发行版 v3.6.0 版本,在性能上,针对图上常用的路径查询、多跳查询上,均有不同程度的性能提升,最高提升了 6 倍。
以下罗列了一些大家不可错过的新特性:
KILL SESSION 可终止执行过慢的查询语句;
#pr5146v.tag 这样的表达式;
#pr5440UPDATE 语句中的
json_extract 函数;
#pr5457EXPLAIN 输出中使用 TCK 格式;
#pr5414#pr5328MATCH 子句检索 VID 或属性索引时使用变量;
pr#5486
#5553MATCH 语句查询不存在的属性时的性能;
pr#5634pr#5301pr#5308FIND ALL PATH 性能;
pr#5409MATCH 支持 ID 集合;
pr#5360GO planner;
pr#5369pr#5463如果你对各个 NebulaGraph 版本的具体的 release note 有兴趣,可以前往 GitHub 页面阅读各个版本的信息: https://github.com/vesoft-inc/nebula/releases

除了官方出品的周边工具之外,在 nebula-contrib 组织下收录了大量社区用户贡献的实用工具。而今年,这个组织下又有了新动态:
不像 nebula-contrib 组织下的项目从零到一,下面这些大家熟悉的周边工具在 2023 年也迎来了大的功能迭代:
nebula-studio v3.7.0 版本中对 ARM 架构进行了适配,在
pr#667 中优化了执行计划的可视化;Ping 指定 Session,在 v3.5.0 支持配置
SessionPoolConfig.setReconnect() 来设定客户端是否进行现有可用服务的重连接,在 v3.6.1 支持了 HTTP/2;ngql + include 的用法,拓展了 NebulaDaoBasic 的多个接口,v1.2.0-jdk17 中支持了 Spring Boot 3.x。2023 年的 NebulaGrpah 不只是专注自身的发展,也同其他的开源项目紧密合作,比如:高性能实时分析数据库 Apache Doris 和云原生数据基础设施管理平台 KubeBlocks。
感谢你对 NebulaGraph 的关注 (///▽///)
如果你有什么需求社区还未安排上,来和 星云小姐姐 说道说道。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69952037/viewspace-3004428/ ,如需转载,请注明出处,否则将追究法律责任。