FerretDB 1.0 是一种无状态代理,旨在将MongoDB协议查询转换为 SQL 并利用PostgreSQL作为主要数据库引擎,现已作为生产版本提供。它的创建者将其描述为“真正开源的MongoDB替代品”。该版本包括运行文档数据库工作负载所需的所有基本功能。
在 Apache 2.0 许可下, FerretDB旨在将MongoDB数据库任务带回到它们的“开源根源”。 FerretDB Inc.于 4 月 11 日宣布了这一进展。该技术允许PostgreSQL和其他数据库后端运行MongoDB工作负载。还包括对Tigris的支持,并正在努力将SAP HANA和SQLite包括在内。可以在GitHub上找到有关FerretDB入门的说明。
根据FerretDB说法, MongoDB不再是开源的,因为它现在根据服务器端公共许可证 (SSPL) 提供。他们引用了 Open Source Initiative 的一篇博文,声称 SSPL 许可证剥夺了用户权利,不适合许多开源和早期商业项目。另一方面, MongoDB坚持认为 SSPL 确保其软件即服务的用户回馈社区。
FerretDB与MongoDB驱动程序和工具兼容,提供用于开发和生产用途的 Docker 映像,以及 RPM 和 DEB 包。还提供了一个包罗万象的 Docker 镜像,其中包含使用PostgreSQL评估FerretDB所需的一切。随着普遍可用版本的推出, FerretDB支持 createIndexes 命令,允许用户指定索引中的字段和要使用的索引类型。此外,dropIndex 命令允许从集合中删除索引。聚合管道功能已扩展为包括更多阶段,例如 $unwind、$limit 和 $skip。
本季度末的FerretDB路线图包括对基本游标命令、高级索引和原始 SQL 查询功能的支持。第三季度计划涉及增强聚合管道支持、用户管理命令和查询投影运算符。提高查询性能也是一个关键目标。由于其兼容性和潜力, FerretDB还可以使appmaster .io" data-mce-href="https:// appmaster.io"> AppMaster.io 等no-code平台的用户受益,这些平台在其应用程序中使用与PostgreSQL兼容的数据库企业和高负载用例。