Microsoft 基于 PostgreSQL 构建开源文档数据库,推荐使用 FerretDB 作为前端

微软推出基于 PostgreSQL 的开源文档数据库平台,并建议用户可以通过实施开源 FerretDB 解决方案来开始使用。这一举措展现了微软对开源世界的日益接受,旨在满足社区对 NoSQL 数据库的需求,同时提供完全开源、无商业许可费用的解决方案。

Microsoft 推出了一个基于关系型数据库 PostgreSQL 后端构建的文档数据库平台。

这家科技巨头同时建议用户可以通过在平台上实施开源的 FerretDB 解决方案来开始使用。

虽然观察者可能会对 Microsoft 日益接受开源世界感到惊讶,但据上周末的一篇博客显示,该供应商表示正在推出"由 PostgreSQL 驱动的完全开源平台",在该平台上"可以构建端到端的文档数据库体验,以满足社区的 NoSQL 数据库需求"。

文档数据库的趋势在十多年前开始浮现,由 MongoDB 等支持者推动,他们认为开发人员会受益于一个对 schema 要求较少的数据库,并能更好地处理来自面向网络的软件产生的"半结构化"数据类型。

Microsoft 的这项新承诺意味着:首先,该数据库由关系系统支撑;其次,堆栈的不同方面都采用开源治理,包括 MIT、Apache 和 PostgreSQL 全球开发组的领导。

在一篇博客文章中,Microsoft 产品营销经理 Abinav Rameesh 表示:"没有商业许可费用,没有使用或分发限制,也没有任何陷阱。虽然我们一直欢迎并鼓励对项目做出贡献,但用户无需将其定制、贡献和改进提交回项目。MIT 许可证保证了完全自由地分叉存储库、使用和分发,且无任何义务。"

Microsoft 开发了两个 PostgreSQL 扩展。首先是 pg_documentdb_core,这是一个针对 BSON (Binary JavaScript Object Notation,JSON 文档的二进制编码序列化) 优化的自定义 PostgreSQL 扩展。PostgreSQL 从 2013 年开始添加对 JSON 文档的支持。

其次,Microsoft 贡献了 pg_documentdb_api,这是实现创建、读取、更新和删除数据的数据平面,以及查询功能和索引管理。

Microsoft 还建议用户可以利用系统现有的开源接口 FerretDB。

Rameesh 说:"虽然用户可以通过 Postgres 与 DocumentDB 交互,但 FerretDB 2.0 提供了一个具有文档数据库协议的接口。FerretDB 同样采用宽松的 Apache 许可证,在 Postgres 和 NoSQL 社区都有重要影响力。"

就 FerretDB 而言,使用 DocumentDB 作为其 2.0 版本的后端意味着某些工作负载的性能比早期版本快 20 倍。

"FerretDB 2.x 利用 Microsoft 新发布的开源 DocumentDB PostgreSQL 扩展,显著提高了数据库性能。除其他改进外,DocumentDB 为 PostgreSQL 引入了 BSON 数据类型和操作,使我们能够比以前更高效地存储和查询数据。"

FerretDB 联合创始人兼 CEO Peter Farkas 表示:"确保 DocumentDB 和 FerretDB 之间的持续兼容性使用户能够在 Postgres 上运行文档数据库工作负载,获得更高的性能和对现有应用程序的更好支持。"

Microsoft、PostgreSQL 和 FerretDB 之间的联合开发必将被视为对开源可用的 MongoDB 的威胁,后者与 Couchbase 一起引领着文档数据库市场。虽然 MongoDB 拥有包括丰田、富国银行和瑞士电信在内的稳固用户群,但希望在文档数据库上构建新项目的开发人员可能会倾向于货比三家。

来源:The Register

0赞

好文章,需要你的鼓励

2025

01/28

09:13

分享

点赞

邮件订阅