首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

FerretDB 1.0 正式 GA,MongoDB 开源替代品

出品|开源中国

经过几个月的开发,FerretDB 现在已经达到生产可用了,这是一个开源的 MongoDB 替代品,建立在 PostgreSQL 之上,并在 Apache 2.0 许可下发布。

FerretDB 希望将 MongoDB 数据库的工作负载带回其开源的本源,使 PostgreSQL 和其他数据库后端能够运行 MongoDB 工作负载,保留 MongoDB 现有生态所提供的机会。

在任何地方部署 + 保持对你的数据的控制

在基于云的项目中自由使用它

使用现有的 PostgreSQL 基础设施来运行 MongoDB 工作负载

GA 的主要功能补充

在这个 GA 版本中,FerretDB 现在支持createIndexes命令。这将使你能够指定你想要索引的字段,以及要使用的索引类型(例如,升序、降序等)。

例如,假设你有一个users集合,包含几个字段,包括 "age"、"name" 和 "email",你想为 "age" 字段创建一个索引。现在你可以运行下面的命令:

db.users.createIndex({ age: 1 })

这将在 "age" 字段上创建一个升序索引,这将加快对该字段进行过滤的任何查询。

还添加了dropIndexes命令,它允许你从一个集合中删除索引。下面是一个例子:

db.users.dropIndex({ age: 1 })

这将从 "users" 集合中删除索引。

FerretDB 1.0 扩展了聚集管道的功能,除了在$group阶段内的$sum累加器外,还包括其他阶段,如$unwind$limit$skip。通过这些补充,可以对采集数据进行更精细的计算和操作。除了这些,还在$collStats聚合管道阶段增加了对countstorageStats字段的支持。

为了帮助你收集更多关于集合、数据库和服务器性能的信息,FerretDB 1.0 启用了对几个服务器命令的部分支持,包括collStatsdbStatsdataSize

要检索一个集合的统计数据,请使用collStats命令:

db.runCommand({ collStats: "users" })

如果是关于数据库的统计,运行下面的命令:

db.runCommand({ dbStats: 1 })

对于集合的总数据量,运行下面的命令:

db.runCommand({ dataSize: "." })

项目状态

FerretDB 现在拥有:

超过 40 位代码贡献者,有超过 130 个来自我们社区的 PR

在 GitHub 上有超过 5.6k Stars 和 200 次 Forks

超过 100 个运行中的实例

FerretDB 下载超过 10000 次

随着 FerretDB 1.0 的发布,这些数字还会继续增长。

更多详情可查看:https://blog.ferretdb.io/ferretdb-1-0-ga-opensource-mongodb-alternative/

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230413A0375R00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券