È disponibile la prima versione pubblica del progetto MangoDB, che offre uno strato con implementazione del protocollo del database documentale MongoDB, funzionante sopra il database PostgreSQL. Il progetto mira a fornire la possibilità di migrare applicazioni che utilizzano MongoDB su PostgreSQL e un stack software completamente open source. Il codice è scritto in Go e distribuito sotto la licenza Apache 2.0.
Il programma funziona come un proxy, trasmettendo le richieste a MangoDB in query SQL per PostgreSQL, utilizzando PostgreSQL come archivio effettivo. Il progetto è compatibile con i driver per MongoDB, ma è ancora in fase prototipale e non supporta le funzionalità avanzate del protocollo MongoDB, anche se è già idoneo per la migrazione di applicazioni semplici.
La necessità di allontanarsi dall'uso di MongoDB può sorgere a causa del passaggio del progetto a una licenza non libera SSPL, che si basa sulla licenza AGPLv3, ma non è open source, poiché contiene un requisito discriminatorio di fornitura sotto la licenza SSPL non solo del codice dell'applicazione stessa, ma anche dei sorgenti di tutti i componenti coinvolti nella fornitura del servizio cloud.
Ricordiamo che MongoDB occupa un'interfaccia tra sistemi rapidi e scalabili che gestiscono dati in formato chiave/valore e database relazionali, funzionali e facili da interrogare. MongoDB supporta la memorizzazione di documenti in un formato simile a JSON, possiede un linguaggio abbastanza flessibile per la creazione di query, può creare indici per vari attributi memorizzati, gestisce in modo efficiente la memorizzazione di grandi oggetti binari, supporta il logging delle operazioni relative a modifiche e aggiunte di dati nel database, può operare secondo la paradigma Map/Reduce, ed è in grado di supportare la replica e la creazione di configurazioni a prova di guasto.
Fonte: opennet.ru
