本文共 1850 字,大约阅读时间需要 6 分钟。
2019年1月,红帽在最新的RHEL 8.0 Beta Release Note 中明确表示因为 MongoDB 使用了 SSPL 协议,所以将不会在 8.0 系统中提供该数据库。 2019年2月12日,红帽官方发博称,Red Hat Satellite将在后端标准化PostgreSQL,并且再次划重点,Satellite不会使用SSPL许可的MongoDB新版本。
Red Hat Satellite是一种系统管理解决方案,它使Red Hat基础设施更易于在物理、虚拟和云环境中部署、扩展和管理。此管理工具帮助用户提供、配置和更新系统,以使其高效、安全地运行并符合各种标准。通过自动化大多数系统维护任务,Red Hat Satellite帮助组织提高效率、降低运营成本,并使IT部门能够更好地响应战略业务需求。
Red Hat Satellite目前都在使用哪些数据库?抛弃MongoDB,拥抱PostgreSQL是否会对当前使用者造成影响?Satellite自身的性能和功能是否会发生变化……相信很多开发者都很担心以上的问题,针对此,红帽官方也给出了解答(以下问答来源于红帽官方博客):
Red Hat Satellite现在使用哪些数据库?
目前Red Hat Satellite使用两个数据库,MongoDB和PostgreSQL。出现这种情况的原因是多个上游产品使用了不同的数据库。目前的数据库结构会发生变化吗?
没错,我们会调整现有的数据库结构,整合和使用单个PostgreSQL数据库。其实,早在2016年我们就在着手调查Pulp上游单个数据库的迁移情况,开发团队认为,针对Pulp(最终落点是Satellite)所需的功能,我们需要一个具有回滚和事务特性的关系数据库。为什么要从Red Hat Satellite中删除MongoDB Community Edition?
最重要的原因是我们认为PostgreSQL是一个更好的解决方案,适用于Satellite所需的数据和使用类型。此外,统一单个数据库后端可简化Satellite的整体架构,并可简化可支持性、备份和灾难恢复。是否会对包含MongoDB Community Edition、当前支持的Red Hat Satellite版本产生影响呢?
已发布的Satellite版本将继续支持MongoDB的嵌入式版本,目前MongoDB嵌入式版本已支持到Satellite 6.0中。只要不是迁移到MongoDB新版本中,Satellite团队将会一直对MongoDB进行修补,直到其逐步被淘汰。Satellite不会使用SSPL许可的MongoDB新版本。(笔者按:红帽老大又一次划重点)
对于Satellite的性能或功能会有哪些预期影响呢?
我们预计删除MongoDB不会对性能产生任何重大影响。此外,我们也在努力避免删除MongoDB之后对Satellite所有功能的影响,让Satellite用户可以继续享受他们之前依赖的Satellite功能。何时将MongoDB Community Edition作为嵌入式数据库放入Red Hat Satellite中?
事实上,MongoDB数据库的更改还在进行当中,但是我们希望能够先把我们的意图先传达给用户,让用户为迁移MongoDB做好准备,具体的发布时间现在还没确定。上图为PostgreSQL和MongoDB在DB-Engines上的发展曲线,我们可以发现在2015年和2017年,双方的流行度发生了交换,并且从2017年之后,PostgreSQL一直在稳步上升,与MongoDB逐渐拉开了差距。
红帽抛弃MongoDB的原因是因为其使用了SSPL许可,但是选择PostgreSQL的原因,除了其本身的回滚和事务特性,可能也有PostgreSQL越来越流行的原因吧,毕竟PostgreSQL的流行度已经跨过400,迈向500,与排名前三的数据库越来越接近了。
另外,因为红帽是因为MongoDB更改了协议才“放弃”它的,所以我们也可以合理猜测,其选择PostgreSQL的原因也可能是因为PostgreSQL背后没有商业公司,BSD开源协议不会轻易修改。
参考链接:
转载地址:http://lkoux.baihongyu.com/