A database proxy that enables MongoDB compatibility with PostgreSQL backend, allowing seamless use of MongoDB tools and drivers while avoiding vendor lock-in.

Overview:

FerretDB is an open-source proxy that translates MongoDB 5.0+ wire protocol queries to SQL, using PostgreSQL with the DocumentDB extension as its database engine. It functions as a drop-in replacement for MongoDB in many scenarios, designed for users who need a document database solution without MongoDB's SSPL licensing. The project focuses on maintaining broad compatibility with MongoDB drivers and tools while offering a familiar NoSQL interface backed by a relational database. It is primarily suited for developers and teams migrating away from MongoDB or seeking a compatible open-source document store.

Core Features:

  • MongoDB wire protocol compatibility: Supports MongoDB 5.0+ wire protocol, enabling use with standard MongoDB drivers and tools like mongosh.

  • SQL-backed storage: Uses PostgreSQL with the DocumentDB extension as the underlying database engine, translating MongoDB queries to SQL.

  • Drop-in replacement capability: Designed to be a direct replacement for MongoDB in many use cases, supporting common MongoDB features and commands.

  • Self-hosted deployment: Available as Docker images, Linux binaries and packages, or as an embedded Go library.

  • Cloud provider integration: Offers managed versions through providers including FerretDB Cloud, Civo, Tembo, Elestio, and Cozystack.

Use Cases:

  • Developers migrating existing applications: Moving MongoDB-based applications to an open-source compatible database without extensive code changes.

  • Self-hosters needing a document database: Running a PostgreSQL-backed MongoDB-compatible server on own infrastructure.

  • Testing and development: Using the provided Docker quickstart container to evaluate MongoDB compatibility with minimal setup.

  • Embedded database scenarios: Integrating MongoDB-compatible functionality into Go applications via the available library package.

Why It Matters:

FerretDB provides a path to use MongoDB-compatible document databases under a non-restrictive open-source license, avoiding MongoDB's SSPL terms. By leveraging PostgreSQL with DocumentDB extension, it combines the familiar MongoDB driver interface with the stability and ecosystem of a mature relational database. The project explicitly targets users who do not need MongoDB's advanced features, focusing on core document store functionality. Its availability as Docker images, binaries, packages, and an embedded library offers flexible deployment options for different environments.

CondividiXLinkedInReddit

Statistiche progetto

Stelle

10,923

Fork

477

Licenza

Apache-2.0

Metadati

Alternativa a
Fauna