MangoDB:MongoDB 的开源替代品

MongoDB 是一个 NoSQL 数据库系统面向文档,改变了许多开发人员的生活,使他们能够比关系数据库更快地构建应用程序。 然而,MongoDB 已经放弃了它的开源根源,将许可证更改为 SSPL, 使其无法用于许多商业和开源项目。

在此之前出现了MangoDB,这是一个完美的解决方案 对于那些寻求 MongoDB 开发经验的人来说,MangoDB 提供了一个层,其中包含运行在 PostgreSQL 之上的面向文档的 MongoDB 协议实现。

萨尔瓦多PROYECTO 旨在提供将 MongoDB 应用程序迁移到 PostgreSQL 的能力 和完全开放的软件堆栈。 代码是用 Go 语言编写的,并在 Apache 2.0 许可下分发。

请记住,MongoDB 是一个面向文档的数据库管理系统 它可以分布在任意数量的计算机上,并且不需要预定义的数据模式。 它允许以 BSON 格式(二进制 JSON)处理结构化对象,而无需默认模式。

换句话说,可以随时“即时”添加密钥, 无需重新配置基础。 数据采用文档的形式,这些文档又存储在集合中,集合包含任意数量的文档。 集合就像表,文档就像关系数据库中的记录。

服务器端公共许可证 (SSPL) 是由 MongoDB Inc 开发的专有软件许可证. 根据 MongoDB 的说法,SSPL 基于 AGPL3 许可证,并增加了一个新部分,“明确并明确地设置将许可程序作为第三方服务分发的条款”,要求所有源代码在软件作为服务的一部分向公众提供。

这个变化 于 2018 年 XNUMX 月推出,Debian、Red Hat Enterprise Linux 和 Fedora 发行版随后放弃了 MongoDB, 引用对 SSPL 的担忧。 亚马逊推出了一项名为 DocumentDB 的受支持但专有的服务,SSPL 似乎无法增加 MongoDB 的云收入。 大多数 MongoDB 用户不需要 MongoDB 提供的许多高级功能,但他们确实需要一个开源数据库解决方案,这就是 MangoDB 发挥作用的地方。

我们解决方案的核心是一个无状态代理,它将 MongoDB 协议查询转换为 SQL,并使用 PostgreSQL 作为数据库引擎。 它将与 MongoDB 驱动程序兼容,并且在许多情况下,它应该可以直接替代 MongoDB。

MangoDB 旨在成为事实上的 MongoDB 的开源替代品。 MangoDB 是一个开源代理,将 MongoDB 有线协议查询转换为 SQL,并使用 PostgreSQL 作为数据库引擎。 MangoDB 将与 MongoDB 驱动程序兼容,并将在许多情况下直接替代 MongoDB。

该计划 充当代理,将 MangoDB 的调用转换为对 PostgreSQL 的 SQL 查询, 使用 PostgreSQL 作为真正的存储。 该项目支持MongoDB的驱动,但仍处于原型阶段,不支持MongoDB协议的高级特性,虽然已经适合翻译简单的应用程序。

由于项目过渡到基于 AGPLv3 许可证但未开放的非免费 SSPL 许可证,可能会出现避免使用 DBMS MongoDB 的需要,因为它包含在 SSPL 下提供的歧视性要求不仅是应用程序本身的代码,还包括提供云服务所涉及的所有组件的源代码。

最后 如果您有兴趣了解更多信息 关于MangoDB,你可以查看详情 在下面的链接中。


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。