FerretDB 1.0 是一种无状态代理,可将 MongoDB 协议查询转换为 SQL,使用 PostgreSQL 作为数据库引擎。
2023年4月14日消息,FerretDB 被其创建者描述为“真正开源的 MongoDB 替代品”,现已推出 1.0 生产版本,具有“能够运行文档数据库工作负载的所有基本功能”。
FerretDB 在 Apache 2.0 许可下提供,是一种开源代理,可将 MongoDB 6.0+ 有线协议查询转换为 SQL,使用 PostgreSQL 作为数据库引擎。FerretDB 公司在 4 月 11 日表示,该技术旨在将 MongoDB 数据库任务带回“开源根源” 。
FerretDB 使 PostgreSQL 和其他数据库后端能够运行 MongoDB 工作负载。还支持Tigris作为后端,同时支持 SAP HANA 和 SQLite 的工作正在进行中。可以在 GitHub (https://github.com/FerretDB/FerretDB#quickstart)上找到有关 FerretDB 入门的说明。
FerretDB 认为 MongoDB 不再是开源的,因为它是在服务器端公共许可证(SSPL) 下提供的。FerretDB 指向Open Source Initiative 的一篇博客文章(https://blog.opensource.org/the-sspl-is-not-an-open-source-license/),认为 SSPL 许可证剥夺了用户权利;FerretDB 还表示,SSPL 不适用于许多开源和早期商业项目。MongoDB 认为SSPL 确保 MongoDB 软件即服务的用户回馈社区。
FerretDB 与 MongoDB 驱动程序和工具兼容。提供 Docker 镜像供开发和生产使用,以及 RPM 和 DEB 包。提供了一个一体化的 Docker 镜像,其中包含使用 PostgreSQL 评估 FerretDB 所需的一切。随着普遍可用的版本,FerretDB 现在支持createIndexes指定索引中的字段和要使用的索引类型的命令。命令dropIndex使用户能够从集合中删除索引。聚合管道功能已扩展为包括其他阶段,例如$unwind、$limit和$skip。
本季度末FerretDB 的路线图包括对基本游标命令和高级索引的支持以及运行原始 SQL 查询的能力。第三季度的计划包括改进聚合管道支持、用户管理命令和查询投影运算符。提高查询性能也是一个目标。
文章来源:https://www.infoworld.com/article/3693253/open-source-ferretdb-offers-drop-in-replacement-for-mongodb.html




