Den første offentlige version af MangoDB-projektet er tilgængelig, som tilbyder et lag med implementering af protokollen for den dokumentorienterede database MongoDB, der kører oven på PostgreSQL. Projektet sigter mod at muliggøre migreringen af applikationer, der bruger MongoDB, til PostgreSQL med et helt åbent software-stack. Koden er skrevet i Go og distribueres under Apache 2.0-licensen.
Programmet fungerer som en proxy, der oversætter anmodninger til MangoDB til SQL-forespørgsler til PostgreSQL, og bruger PostgreSQL som det faktiske lager. Projektet er kompatibelt med drivere til MongoDB, men er stadig i prototypefasen og understøtter endnu ikke de avancerede funktioner i MongoDB-protokollen, selvom det allerede er brugbart til at oversætte enkle applikationer.
Behovet for at undgå brugen af MongoDB kan opstå på grund af overgangen af projektet til den kommercielle SSPL-licens, som er baseret på AGPLv3-licensen, men ikke er åben, da den indeholder diskriminerende krav om levering under SSPL-licensen af ikke kun koden til selve applikationen, men også kildekoden til alle komponenter, der er involveret i levering af cloudtjenesten.
Det skal bemærkes, at MongoDB befinder sig i en niche mellem hurtige og skalerbare systemer, der opererer med data i nøgle/værdi-format, og relationelle databasesystemer, som er funktionelle og brugervenlige til at formulere forespørgsler. MongoDB understøtter opbevaring af dokumenter i et JSON-lignende format, har et ret fleksibelt sprog til at formulere forespørgsler, kan oprette indekser for forskellige gemte attributter, sikrer effektiv opbevaring af store binære objekter, understøtter logning af operationer vedrørende ændringer og tilføjelser af data i databasen, kan arbejde i overensstemmelse med Map/Reduce-paradigmet og understøtter replikation og opbygning af failover-konfigurationer.
Kilde: opennet.ru
