Skip to content

FerretDB

FerretDB 開源 MongoDB 替代方案

軟體分類 程式開發 / 程式設計
軟體標籤
Aria2Electron備份磁力連結 (Magnet)ffDiaporamamusic editors
開發廠商 FerretDB Inc.
Stars
0
Forks
0
License
APACHE-2.0
Version
v1.25.0
Update
OS

熟悉的配方,更自由的靈魂:讓您的 MongoDB 應用無痛遷移至 PostgreSQL

  • 100% 真正的開源方案: 採用 Apache 2.0 授權,完全解決了 MongoDB 轉換至 SSPL 授權後帶來的合規性疑慮。
  • 沿用既有開發生態: 完美支持現有的 MongoDB 驅動程式與工具(如 Compass, mongosh),開發者無需學習新語法即可上手。
  • 以 PostgreSQL 為穩固基石: 利用 PostgreSQL 強大的 ACID 特性與成熟的生態系,為文件型數據提供企業級的可靠性與擴展性。

主要功能、特點

  • 介紹: FerretDB 是一個開源的資料庫代理,它扮演著翻譯官的角色。它接收應用程式發出的 MongoDB 查詢請求,並將其轉換為底層關係型資料庫(如 PostgreSQL)能理解的 SQL 語句。

  • 特色服務:

    • 協議級兼容: 原生支援 MongoDB 有線協定,讓您現有的程式碼無需修改連線邏輯即可直接切換後端。
    • 多後端支持: 除了最推薦的 PostgreSQL,亦支援 SQLite(適合嵌入式場景)與 DuckDB(適合分析型場景)。
    • 零學習成本: 如果您已經習慣了 db.collection.find()aggregate,在 FerretDB 中一切操作依然如故。
    • 雲端中立性: 由於後端是標準的 SQL 資料庫,您可以輕鬆在任何雲服務商提供的託管服務上部署,不再受限於特定的資料庫服務商。

快速部署範例 (Docker Compose)

使用 Docker 一鍵啟動包含 PostgreSQL 後端的 FerretDB:

services:
  postgres:
    image: postgres:16
    environment:
      - POSTGRES_USER=username
      - POSTGRES_PASSWORD=password
      - POSTGRES_DB=ferretdb

  ferretdb:
    image: ghcr.io/ferretdb/ferretdb:1.25.0
    ports:
      - "27017:27017"
    environment:
      - FERRETDB_POSTGRESQL_URL=postgres://username:password@postgres:5432/ferretdb

產品說明

FerretDB 的出現是為了回應開發者社群對「真正開源」的渴望。它精準地定位於那些深愛 MongoDB 的文件操作便利性,卻對其授權模式感到不安的開發團隊。透過將複雜的文件查詢邏輯「卸載」到穩定、成熟的 PostgreSQL 之上,FerretDB 不僅守護了開發者的數據主權,更將關係型資料庫的強大事務能力與非關係型數據的靈活性完美結合。對於需要處理 JSON 數據、卻又希望基礎設施具備高透明度與標準化的專案而言,FerretDB 是一個既明智且具備前瞻性的技術選擇。