暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

nextgres项目夭折,国产新势力openHalo接棒再出发!

原创 xiongcc 2025-04-05
29

前言

四月伊始,这个月数据库圈子里的当红炸子鸡当属是 openHalo 了,德哥的一则愚人节炸裂标题彻底点燃了数据库圈子里的氛围,章总被架到了火架上反复鞭挞。当然,愚人节不愚人,openHalo 也不负众望,正式开源,目前也已收获了 100+ ⭐️,今天得空,赶紧试试这个"套着 MySQL 外壳的 PostgreSQL"。

腹死胎中的 nextgres 项目

在正式介绍 openHalo 之前,笔者还想提一下 nextgres。对于 nextgres 项目,可能有些小伙伴比较陌生,在 2024 年的 Postgres 大会上,NEXTGRES 公司宣布了一个令人瞩目的 PostgreSQL 扩展,该扩展允许 MySQL 应用程序在 PostgreSQL 上无缝运行,无需任何代码更改,融合两家之所长。

在这篇议题中,作者讲述了 PostgreSQL 如火如荼的发展态势和 MySQL 逐渐疲软的困境:

图片

以及未来 MySQL 用户大致可以选择的路径:

  1. MariaDB
  2. MySQL Clones & Compatibles (各种与 MySQL 高度兼容的衍生或克隆版本)
  3. PostgreSQL

但是由于 PostgreSQL 和 MySQL 的差异众多,包括生态、架构、版权和 ownership 等等,如果从 MySQL 迁移到 PostgreSQL 需要耗费大量的成本与精力。因此这便是 nextgres 的目标:

  1. 给 Postgres 带来 MySQL 那种易上手、高读性能、丰富工具生态的优势;
  2. 给 MySQL 带来 Postgres 在多语言、处理海量数据及丰富扩展能力方面的特性。

这样可以让两大开源数据库在功能和体验上都能进一步完善,满足更广泛的应用需求。

图片

NEXTGRES 本计划在 2024 年推出 Alpha、Beta 版本,并在年底前发布正式版,但是可惜的是,这个仓库目前空空如也,夭折了,https://github.com/nextgres/nextgres,令人扼腕。[1]

图片

openHalo 接棒再出发

虽然 nextgres 项目夭折了,但是国产数据库新势力 openHalo 接棒再出发!https://github.com/HaloTech-Co-Ltd/openHalo[2]

简而言之,openHalo 就是套着 MySQL 外壳的 PostgreSQL,协议级兼容,意味着 MySQL 的客户端、驱动等,都可以无缝接入 openHalo,最大化减少应用改造成本,其次你还可以享受 PostgreSQL 的能力,比如扩展性、性能等等。

openHalo provides the capability for PostgreSQL to work with applications written for MySQL but provides much more better performance than MySQL!

图像

由于底子是 PG,因此,笔者上手 openHalo 特别丝滑,几分钟就完成了编译与安装,初始化好之后,修改为 MySQL 模式,这样你便得到了一个加持着 PostgreSQL 能力的 MySQL。

...database_compat_mode = 'mysql'                 # database compat mode, values can be:                                               # mysql (mysql mode)                                               # postgresql (default)
mysql.listener_on = true                       # (enable MySQL listener; change requires restart)mysql.port = 3306                              # (port for MySQL; change requires restart)...
复制
image

具体使用过程就不再演示了,毕竟笔者的 MySQL 能力局限在 CRUD,各位 MySQLer 可以尽情发挥你们的才华,使劲折腾,这样才能臻于至善。

小结

这也正是 PostgreSQL 的优势——可扩展性,有了 Babelflish,你可以当成 SQLServer 使用,有了 openHalo,你可以当成 MySQL 使用,有了 IvorySQL,你可以当成 Oracle 使用,有了 FerretDB,你可以当成 MongoDB 使用 😎,酷毙了。

开源的优势在于其透明度和开放性,通过社区支持和高性价比降低了使用门槛,大幅加快创新步伐。截止目前,openHalo 已经有数十条 issue,若干条 PR,开源软件的建设需要群策群力,现在还有许多需要建设的事宜:

  1. 完善的官方文档
  2. 知识库与 FAQ
  3. 问题反馈
  4. ....

这么优秀的开源项目更需要大家的力量,相信下一个 contributer/commiter 就是你 ~

References

[1]https://github.com/nextgres/nextgres,令人扼腕。
[2]https://github.com/HaloTech-Co-Ltd/openHalo。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论