数据库多样性:MongoDB有哪些替代品

MongoDB 作为最受欢迎的文档数据库,让开发者能够抛开关系型数据库的模式束缚,从而快速构建应用程序。

然而随着时间推移,MongoDB 将开源许可证更改为 SSPL(如果公司提供基于MongoDB的服务,那么不仅MongoDB本身的代码需要开源,任何“提供服务的软件”也需要开源),这使得许多开源项目和早期商业项目无法使用它。

大家觉得 MongoDB 放弃了它的开源本质,因为许多开源倡导者,包括开源倡议组织(OSI),并不认为SSPL 约束的软件是开源的,觉得SSPL 对开源精神产生了不利影响。 这些更改开源协议的数据库官方觉得近些年许多云厂商将其开源数据库作为服务的一部分,但是对社区的贡献相对较少,从而选择更改开源协议,类似的有ESRedis

但是有没有 MongoDB 的替代品呢?

答案是有的。

🐌 FerretDB

FerretDB 可以为使用 MongoDB 驱动的应用程序提供一个丝滑迁移到 PostgreSQL 的过渡方案。

FerretDB是一个开源代理,将 MongoDB wire protocol 查询转换为SQL,使用PostgreSQL 或 SQLite 作为数据库引擎。它使用与 MongoDB 相同的命令、驱动程序和工具。

在实际的生产中,一般使用PG作为底层数据库存储

在将 MongoDB 迁移至 FerretDB 前建议对应用进行充分测试,在启动 FerretDB 时设置diff-normal 或者 diff-proxy 模式,避免复杂查询的不兼容。

该项目在 Github 的 star 数已接近9k

✴️ Useful sites:

https://pigsty.cc/ https://www.ferretdb.com/ https://www.postgresql.org/ https://github.com/FerretDB/FerretDB

🐌 Percona Server for MongoDB

Percona 维护的 MongoDB 相较于官方社区版增加了很多企业级的特性。

Percona 是一家以较好开源精神著称的公司,它的开源精神不仅体现在其产品的免费和开放上,更体现在其对社区的贡献、对技术透明度的坚持以及对数据库领域的持续创新上。这使得 Percona 成为了开源数据库领域的一个重要和值得信赖的参与者。

Percona 提供了一系列开源数据库产品,包括 Percona Server for MySQLPercona Server for MongoDBPercona Distribution for PostgreSQL。这些产品不仅免费提供给社区,而且还包含了许多企业级功能,这些功能在其他供应商的产品中都是收费的。

除了上述的数据库分支,Percona 还盛产数据库监控和维护工具。

总的来说,FerretDBPercona Server for MongoDB都是优秀的MongoDB替代品,它们各自的特点和优势使它们能够满足不同的应用场景和业务需求。

  • 11
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值