FerretDB —— MongoDB 的开源替代品
FerretDB(以前称为 MangoDB)的成立是为了成为 MongoDB 的开源替代品。FerretDB 是一个开源代理,将 MongoDB wire protocol 查询转换为 SQL —— 使用 PostgreSQL 作为数据库引擎。
为什么我们需要 FerretDB?
MongoDB 放弃了它的开源根源;将许可证更改为 SSPL - 使其无法用于许多开源和早期商业项目。大多数 MongoDB 用户不需要 MongoDB 提供的许多高级功能;然而,他们需要一个易于使用的开源数据库解决方案。认识到这一点,FerretDB 将填补这一空白。
范围
FerretDB 将与 MongoDB 驱动程序兼容,并将努力作为 MongoDB 的替代品。
示例
1. 先在docker-compose.yml文件保存以下内容:
version: "3"
services:
postgres:
image: postgres:14
container_name: postgres
ports:
- 5432:5432
environment:
- POSTGRES_USER=user
- POSTGRES_DB=mangodb
- POSTGRES_HOST_AUTH_METHOD=trust
postgres_setup:
image: postgres:14
restart: on-failure
entrypoint: ["sh", "-c", "psql -h postgres -U user -d mangodb -c 'CREATE SCHEMA IF NOT EXISTS test'"]
mangodb:
image: ghcr.io/mangodb-io/mangodb:latest
container_name: mangodb
ports:
- 27017:27017
command: ["--listen-addr=:27017", "--postgresql-url=postgres://user@postgres:5432/mangodb"]
2. 通过postgres 容器运行存储数据的 PostgreSQL 14 数据库
3. 使用postgres_setup容器创建一个 PostgreSQL schematest,其作用类似于同名的 MangoDB 数据库
4. 使用mangodb 运行 MangoDB
5. 使用docker-compose up -d启动服务
6. 如果已经安装mongosh,只需运行它即可连接到 MangoDB 数据库test。如果没有,在临时 MongoDB 容器内运行运行以下命令mongosh,并将其附加到同一个 Docker 网络:
docker run --rm -it --network=mangodb_default --entrypoint=mongosh mongo:5 mongodb://mangodb/
关注公众号
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
每日一博 | 字节码引用检测原理与实战
一、字节码与引用检测 1.1 Java字节码 本章中的字节码重点研究Java 字节码,Java字节码(Java bytecode)是Java虚拟机执行的一种指令格式。可以通过javap -c -v xxx.class(Class文件路径) 命令来查看一个Class对应的字节码文件,如下图所示: 1.2 字节码检测 字节码检测本质就是对.java或.kt文件编译后生成的Class文件进行相关的分析和检测。在正式介绍字节码分析在引用检测上的原理与实战前,先介绍下字节码引用检测的技术预研背景。 二、字节码检测技术的预研背景 整个预研背景需要先从笔者负责的APP--内销官网APP的软件架构讲起。 2.1 内销官网APP软件架构 内销官网APP目前共12个子仓,子仓分别独立编译成AAR文件供APP工程使用,软件架构图如下图所示: APP以下,上层浅蓝色为业务层,中间绿色为组件层,最下层深蓝色为基础框架层: 业务层:位于架构最上层,根据业务线划分的业务模块(比如商城、社区、服务),与产品业务相对应。 组件层:是APP的一些基础功能(比如登录、自升级)和业务公用的组件(比如分享、地址管理、视频播放)...
-
下一篇
Chromium 禁止用户删除内置搜索引擎引发问题,该功能后续将回归
众所周知,浏览器一般都设有一个默认的搜索引擎并内置了多个其他的搜索引擎可供用户进行替换,如果内置的都无法满足用户需求,用户还可以手动添加。如果用户出于某个原因不想要浏览器自带的这些搜索引擎,他们还可以从设置中删除。 然而在近日 Chromium 97 的更新中,Chromium 对这些设置进行了修改,「删除」这些默认搜索引擎的选项不再存在。也就是说,Google Chrome、微软 Edge、Vivaldi 和 Brave 等等基于 Chromium 的浏览器在升级至 Chromium 97 后也同样如此。 从上面的截图中可以看出,「删除」选项被 Chromium 删除了,而「设为默认」和「编辑」选项仍然存在。之所以会有这样的变化,缘于开发者认为移除这个功能对终端用户来说更有利。 移除「删除」按钮的提案是在 2021 年 10 月提出的,Chromium 的开发者 Justin Donnolley 在 ID1263679 下发起了这个问题中提到: 目前,你可以通过 2 次点击就删除一个预先设置的搜索引擎。这样做具有不可恢复的破坏性,因为即使你有足够的经验使用「添加」对话框重新创建一个预...
相关文章
文章评论
共有0条评论来说两句吧...

微信收款码
支付宝收款码