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

MongoDB 6.0。你现在应该升级吗?

原创 逆风飞翔 2022-10-23
2166

MongoDB 6.0。你现在应该升级吗?


   MongoDB是一个跨平台、面向文档的NoSQL数据库。它的开发是为了满足对易于使用但性能非常好、可扩展和内容无关的存储日益增长的需求。MongoDB已经被从银行到社交媒体等任何地方的应用开发的工程师广泛采用。不幸的是,在2017年MongoDB公司上市后,他们选择了一条激进的货币化道路,将许可证改为SSPL 这是一种对你不利的许可证模式),并推广Atlas(MongoDB的数据库即服务(DBaaS)解决方案),甚至超过了昂贵的MongoDB Enterprise。该公司把社区的用户需求远远抛在了迎合高端企业客户的后面,让MongoDB社区陷入了困境。

 虽然受到SSPL许可的限制(不被开放标准组织(OSI)认可为开源),但以对开源软件的深刻承诺而闻名的Percona选择通过以下方式来支持陷入困境的MongoDB社区。

 

提供 Percona Server for MongoDB(PSMDB)--一个基于MongoDB社区版(CE)的源码可用的MongoDB替换数据库,并在此基础上增加Percona开发的企业功能。

我们还要记住,虽然MongoDB公司选择将MongoDB CE转移到SSPL,但并不尊重他们的用户必须面对的合规性和审批程序,而Percona与MongoDB公司不同,选择仍然为基于AGPL的版本提供补丁,保持开放源代码。

为MongoDB的备份和恢复提供了一个免费的开源产品。Percona Backup for MongoDB(PBM)可以与PSMDB以及(在一定程度上)与MongoDB Inc.的MongoDB社区版和企业版一起使用。

将PSMDB和PBM打包在Percona Distribution for MongoDB中:一个易于部署的MongoDB完整解决方案。

提供Percona监控和管理(PMM),它可以作为MongoDB Ops Manager的一个开源、多数据库的替代品。

开发MongoDB 普罗米修斯导出器,免费提供给需要了解其MongoDB实例情况的任何人(从GrafanaAnsibleDynatrace)使用,该导出器在业界被开源社区和企业APM工具广泛使用。

提供Percona Operator for MongoDB,这是一个完整的解决方案,用于MongoDB的Percona服务器的容器化环境,包含必要的Kubernetes设置,以保持一致的PSMDB实例(如果你不确定在Kubernetes中运行MongoDB是否适合你,请查看解决方案的优点和缺点)。

我认为可以说,这个名单是令人印象深刻的。个人、组织、甚至企业都受益于Percona提供的软件是免费和开放的。

 

一个苦乐参半的版本

看到MongoDB 5.0引入的所有关键bug,感觉它的发布似乎很仓促,让半生不熟的功能进入GA。看着众多可能导致数据损坏的关键问题,你仍然可以说这是IT开发中的一种自然状态,引用爱因斯坦的话。

 

一个从未犯过错误的人就意味着从未尝试过任何新事物。

 

说的没错,但是按照The Register的报道,我不会在这里使用这种说法。MongoDB公司推出的 "加速发布节奏 "假定主要的改进是在 "快速发布 "中发布的,只对Atlas(DBaaS)客户开放。MongoDB社区甚至MongoDB企业客户都不会在5.0.x中尝到这些改进,尽管他们有机会尝到5.0中所有的不稳定性、局限性和错误。

 

当然,MongoDB公司会争辩说,快速发布版是为边缘采用者准备的,它们包括新的功能,而所有的问题都在错误修复、补丁集发布中得到了修复。根据我的经验,并不是只有bug修复才能解决用户问题。想一想发布周期和这样的情况:由于最后期限,一些功能在主要版本中以有限的范围发布。这听起来确实太熟悉了,对吗?现在,这并不是那么糟糕,因为(通过语义版本管理)次要版本会填补缺失的功能,解除限制,并使主要版本中经常进入市场的焦点功能变得完整。在这种情况下,至少如果你是社区版或企业版的 "二等公民用户",就不会这样。快速发布就是语义版本学所说的次要发布。这意味着在下一个主要版本发布之前,你必须忍受这些限制和缺乏的功能,现在只能满足于修复错误的补丁。

 

考虑到MongoDB 5.0引入了非常有吸引力的功能,比如时间序列集合或者允许自动改变集合的shard-key的resharding。在应用程序设计期间,当初始分片发生时,选择一个好的分片钥匙往往是具有挑战性的。在你的数据库中拥有一个设计不良的分片,对MongoDB的性能意味着一切。就目前而言,要改变它,需要一个手动和繁琐的过程。即使考虑到引入的重新分片的缺点,如过程中的性能和存储开销,它仍然是一个非常诱人的功能,对于许多情况来说,它可能是一个游戏改变者。不幸的是,由于对MongoDB 5.0缺乏信任,而且新的发布节奏没有得到社区的支持,社区往往根本无法从中受益。

 

Percona等了很久才觉得5.0的发布足够稳定。直到MongoDB 5.0.6 CE在5.0.0发布近半年后,Percona才决定对我们的用户和客户来说已经足够安全。这种第三方的监督是开源所带来的宝贵财富。有像Percona这样的公司站在软件发布的背后,你可以得到额外的好处,即 "免费 "对你的软件进行额外验证。

 

终期战略

从上一章来看,5.0版本的采用并不像人们所期望的那样令人印象深刻,这并不令人惊讶。在写这篇博文时,Percona收集的遥测数据显示。

End-of-life strategy MongoDB

MongoDB 4.4 = 47%

MongoDB 4.2 = 17%

MongoDB 5.0 = 15%

MongoDB 4.0 = 13%

 

随着生命周期的结束,MongoDB 4.x版本信息如下。

4.0 EOL April 2022

4.2 EOL April 2023

4.4 EOL April 2024

 

加上对5.0明显缺乏信任,我们看到采用MongoDB 4.4的趋势越来越大,在EOL之前给了一些 "喘息空间"。

 

这是一个公平的策略,是有意义的,但是限制了你获得的价值。如果有另一种方法可以让你获得更多的好处呢?

 

针对MongoDB 6.0的Percona服务器来了

随着MongoDB 6.0的推出,用户得到了期待已久的MongoDB 5.0的改进和可用性修复,而这些改进和修复之前只有Atlas的客户可以品尝到。在需要用户升级的主要版本的EOL之后,6.0可以成为他们的登陆区。这样,用户可以从新版本的更多高级功能以及更晚的EOL中获益。

 

快速浏览一下进入MongoDB 6.0的功能,可以看到一系列有趣的功能,比如。


 

集群之间的同步                                

可查询的加密功能

时间序列集合的改进

分析的改进

更改流的改进

新的聚合运算符

改进搜索

很明显,并不是所有这些都能进入MongoDB社区版,因为有些是为MongoDB企业版甚至Atlas保留的。

 

即使没有社区版没有的功能,6.0版本提供的修复功能比不稳定的5.0版本也是一个很大的改进,值得在你的长期更新策略中考虑。

 

在更新你的社区版时,值得考虑从MongoDB CE迁移到Percona Server for MongoDB。这样你就拥有了MongoDB CE 6.0的所有好处,加上Percona为社区带来的发布周期的优势。随着Percona Server for MongoDB 6.0的即将发布,以及最新发布的Percona Backup for MongoDB 2.0和Percona 监控和管理中对PBM的支持,该解决方案变得完整。在MongoDB社区版已经提供的基础上,再加上内存引擎、广泛的静态数据加密、热备份、LDAP和Kerberos集成等功能,PDMDB提供了一个完整的解决方案,Percona致力于保持开放。请注意,PSMDB 6.0的公告很快就会发布。

 

现在应该如何做?

我们看到,多年来,一些公司改变了他们的许可证,变得不那么开放,同时又声称自己更开放,这显然是一种营销手段。就其核心而言,Percona选择了坚持开源理念。

多年来,Percona专家在与MongoDB社区版相同的上游代码库的基础上,精心为MongoDB提供了Percona服务器的增量。作为MongoDB CE的直接替代品,PSMDB在其基础上增加的这些企业功能才是它的魅力所在。

内存存储引擎。

支持KMIP。

HashiCorp Vault集成。

静止状态下的数据加密。

审计日志。

使用SASL的外部LDAP认证。

热备份。

 这些企业级的功能增强被添加到Percona Server for MongoDB。这样一来,开源社区可以从以前只保留给MongoDB企业客户的功能中受益。有了PSMDB 6.0,事情就不会改变。Percona的使命是为每个人和每个地方提供开放的数据库解决方案。考虑到这一点,我们愿意接受你的建议,即哪些功能对你,我们的用户来说是最重要的。请联系我们,让我们知道!

 

学习更多关于Mongodb Percona Server

相关信息

MongoDB:为什么要为企业付费,既然开源已经对我们来说很普遍了?

在 "DBA的洞察力 "中 5月28日, 2020

 

Percona Server for MongoDB 3.6.14-3.4现已在2019年10月10日 "MongoDB"上市  

适用于MongoDB的Percona服务器3.6.8-2.0现已上市   2018年10月31日在 "MongoDB"

 

了解Percona的最新情况!

加入50,000多名开源爱好者的行列! 我们的时事通讯提供关于Percona开源软件发布的最新信息、技术资源以及与MySQL、MariaDB、PostgreSQL和MongoDB相关的宝贵文章。获取有关Percona Live、我们的技术网络研讨会以及即将举行的活动和聚会的信息,在那里你可以与我们的专家交谈。

 

输入你的工作电子邮件地址:* 

通过提交我的信息,我同意Percona在向我发送有关Percona服务的通信时使用我的个人数据。我明白,我可以根据Percona的隐私政策.在任何时候退订通信。


原文标题:MongoDB 6.0: Should You Upgrade Now?
原文作者:Jan Wieremjewicz
原文地址:https://www.percona.com/blog/2022/09/21/mongodb-6-0-should-you-upgrade-now/

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

评论