Uitgave van FerretDB 0.7, een implementatie van MongoDB gebaseerd op het PostgreSQ DBMS

De release van het FerretDB 0.7-project is gepubliceerd, waarmee u de documentgeoriënteerde DBMS MongoDB kunt vervangen door PostgreSQL zonder wijzigingen aan te brengen in de applicatiecode. FerretDB is geïmplementeerd als een proxyserver die oproepen naar MongoDB vertaalt in SQL-query's naar PostgreSQL, waardoor u PostgreSQL als daadwerkelijke opslag kunt gebruiken. De code is geschreven in Go en gedistribueerd onder de Apache 2.0-licentie.

De noodzaak tot migratie kan zich voordoen in verband met de overgang van MongoDB naar de niet-vrije SSPL-licentie, die is gebaseerd op de AGPLv3-licentie, maar niet open is, omdat deze een discriminerende vereiste bevat om onder de SSPL-licentie niet alleen de applicatie te leveren code zelf, maar ook de broncodes van alle componenten die betrokken zijn bij de levering van de clouddienst.

De primaire doelgroep van FerretDB bestaat uit gebruikers die de geavanceerde mogelijkheden van MongoDB niet in hun applicaties gebruiken, maar een volledig open softwarestack willen gebruiken. In de huidige ontwikkelingsfase ondersteunt FerretDB nog steeds slechts een deel van de MongoDB-mogelijkheden die het vaakst worden gebruikt in typische toepassingen. In de toekomst zijn ze van plan volledige compatibiliteit te bereiken met stuurprogramma's voor MongoDB en de mogelijkheid te bieden om FerretDB te gebruiken als een transparante vervanging voor MongoDB.

MongoDB neemt een niche in tussen snelle en schaalbare systemen die werken op sleutel-/waardegegevens en relationele DBMS'en die functioneel en gemakkelijk te doorzoeken zijn. MongoDB ondersteunt het opslaan van documenten in een JSON-achtig formaat, heeft een redelijk flexibele taal voor het genereren van query's, kan indexen maken voor verschillende opgeslagen attributen, biedt efficiënte opslag van grote binaire objecten, ondersteunt het loggen van bewerkingen om te wijzigen en gegevens toe te voegen aan de database, kan werken volgens het paradigma Map/Reduce, ondersteunt replicatie en het bouwen van fouttolerante configuraties.

Onder de veranderingen in FerretDB 0.7:

  • De voor het Tigris-platform vereiste diagnostische opdracht msg_explain is geïmplementeerd.
  • De opdracht listCollections ondersteunt nu filters (de optie "filter").
  • Het gebruik van het teken "-" in databasenamen is toegestaan.
  • Het aantal parameters dat door de opdracht find wordt ondersteund, is verhoogd.
  • Het wire-pakket, dat het "wire"-protocol implementeert (het protocol voor interactie met MongoDB), kan nu documenten controleren. De minimaal ondersteunde versie van het wire-protocol is teruggebracht tot 13, wat overeenkomt met MongoDB 5.0.

Bron: opennet.ru

Koop betrouwbare hosting voor sites met DDoS-bescherming, VPS VDS-servers 🔥 Koop betrouwbare websitehosting met DDoS-bescherming, VPS- en VDS-servers | ProHoster