FerretDB 1.0 ja va ser alliberat i aquestes són les novetats

FerretDB

FerretDB es va fundar per esdevenir el substitut de codi obert de facto de MongoDB.

Es va donar a conèixer fa poc el llançament de la nova versió del projecte FerretDB 1.0, que permet reemplaçar el SGBD orientat a documents de MongoDB per PostgreSQL sense fer canvis al codi de l'aplicació. FerretDB s'implementa com un servidor intermediari que tradueix les trucades a MongoDB en consultes SQL a PostgreSQL, cosa que us permet utilitzar PostgreSQL com a emmagatzematge real.

La versió 1.0 està marcada com la primera versió estable llesta per a ús general. El públic objectiu principal de FerretDB són els usuaris que no utilitzen les funcions avançades de MongoDB a les seves aplicacions, però volen utilitzar una pila de programari completament oberta.

A la seva etapa actual de desenvolupament, FerretDB és compatible amb un subconjunt de les característiques de MongoDB que es fan servir més comunament en les aplicacions típiques. La necessitat d'implementar FerretDB pot sorgir en relació amb la transició de MongoDB a una llicència SSPL no lliure, basada en la llicència AGPLv3, però no és de codi obert, ja que conté un requisit discriminatori per subministrar sota la llicència SSPL no només el codi de laplicació en si, però també els codis font de tots els components involucrats en la provisió de serveis al núvol.

MongoDB ocupa un nínxol entre els sistemes ràpids i escalables que operen amb dades clau/valor i els DBMS relacionals que són funcionals i fàcils de consultar. MongoDB admet l'emmagatzematge de documents en un format similar a JSON, té un llenguatge força flexible per generar consultes, pot crear índexs per a diversos atributs emmagatzemats, proporciona emmagatzematge eficient d'objectes binaris grans, admet el registre d'operacions per canviar i afegir dades a la base de dades, pot treballar dacord amb el paradigma Map/Redueix, admet la replicació i la construcció de configuracions tolerants a falles.

Principals novetats de FerretDB 1.0

En aquesta nova versió que es presenta es destaca que s'han implementat les ordres createIndexes i dropIndexes per crear i col·locar un o més índexs en una col·lecció, a més que l'ordre getMore es va implementar per mostrar una nova porció del resultat obtingut de l'execució d'ordres que tornen un cursor, com cercar i afegir.

Un altre dels canvis que es destaca de la nova versió s'ha afegit suport per a l'operador d'agregació $sum per calcular la suma de valors de grup, així com també que s'hi va afegir suport per als operadors $limit i $skip per limitar el nombre i ometre documents en afegir i que es va afegir suport per a l'operador $count per comptar documents en afegir.

A més, també es destaca que es va afegir suport per a l'operador $unwind per analitzar els camps de la matriu als documents entrants i formar una llista amb un document separat per a cada element de la matriu i també que es va afegir compatibilitat parcial amb els ordres collStats , dbStats i dataSize per obtenir estadístiques de recopilació i base de dades i la mida de les dades.

Dels altres canvis que es destaquen de la nova versió:

  • Ara s'usen iteradors per a `sort`, `limit`, `skip` i `projection`
  • Bump dependències
  • Millores del seguiment de recursos
  • S'hi van afegir proves per a l'argument `skip` de `find` i `count
  • Tanqueu l'iterador correctament
  • Millores en la inicialització de números grans en dades de prova

Finalment si estàs interessat en poder conèixer més a l'respecte, Pots consultar els detalls en el següent enllaç.

Per als interessats en el codi, han de saber que està escrit a Go i es distribueix sota la llicència Apache 2.0.

I han de saber que la millor manera de provar FerretDB és modificar-lo i executar-lo al host (Linux, macOS o Windows) amb PostgreSQL i altres dependències que s'executen dins dels contenidors de Docker a través de Docker Compose.

A Linux, docker s'ha d'instal·lar al host. A macOS i Windows, s'ha d'usar Docker Desktop, mentre que a Windows s'ha de configurar per utilitzar WSL 2 sense cap distribució; totes les ordres s'han d'executar al host.


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: AB Internet Networks 2008 SL
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.