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

谈谈华为GaussDB 的开源

实力程序员 2020-07-22
2150

2019年9月19日,在华为 CONNECT 大会上,华为宣布将开源其 GaussDB 数据库,开源后命名为 openGauss。

2020年6月30日, 华为兑现了这一承诺,在gitee上放出了openGauss的源代码,并成立 openGauss社区,网站为 opengauss.org。


从openGauss产品文档中可以看出,其在开源PostgreSQL基础上,做了非常多的改进,主要增强特性列举如下:

  • 支持行存储和列存储

  • 同时支持内存表和磁盘表,内存表支持持久化到磁盘。

  • 支持blob/clob 大对象

  • 支持主键/外键/check/not null 等约束

  • 支持 视图/序列/触发器/存储过程/自定义函数/游标/同义词/schema 等数据库对象

  • 支持分区表,目前只支持范围分区

  • 支持 hint

  • 支持wdr snapshot和DBE_PERF Schema,从而实现类似oracle awr的全面性能诊断手段。

  • 支持全文检索

  • 支持用户和角色

  • 支持三权分立、强制访问控制、审计

  • AI:自带了Predictor、X-Tuner、Sqliag三个机器学习工具,可以预测SQL执行时间、自动优化数据库参数等。

  • NUMA化内核结构, 显著提升性能水平


因此,可以看出,openGauss 在功能、性能上的改进,是非常显著的,这里要向华为致敬!



但是,也有些非常不爽的地方,吐槽一下:

1) GaussDB 本来是分布式数据库,这里放出的openGauss却是从集群中阉割出来的单机版。既然都决定了开源,摆出了要拥抱社区建设生态的姿势,为何还留一手?这不禁让人质疑。

2)从2019年9月19日至2020年6月30日,有近9个月的时间,按说时间应该够充分了,但源码放出来后,马上就产生了大量的提交记录,集中在Readme.md, requirements.txt, modify comments,upgrade software version 诸如此类。表明根本就没准备好,在最后的时刻还在忙乱地东改西改。

3)文档的风格,依然是浓浓的盒装软件产品手册的风格,根本没有针对开源进行风格调整,使得简明扼要,通俗易懂。这也难怪,源码都是仓促阉割出来的,文档也是要对应阉割调整的。谁能告诉我,WDR, WLM, DBE 这些都是什么的缩写?



openGauss是好产品,但华为是真心要做开源吗?能把开源做好吗?



文章转载自实力程序员,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论