FerretDB 1.0 est déjà sorti et voici ses nouveautés

FerretDB

FerretDB a été fondée pour devenir de facto le remplacement open source de MongoDB.

Le lancement de la nouvelle version du projet FerretDB 1.0, qui vous permet de remplacer le SGBD orienté document de MongoDB par PostgreSQL sans apporter de modifications au code de votre application. FerretDB est implémenté en tant que serveur proxy qui traduit les appels MongoDB dans les requêtes SQL vers PostgreSQL, vous permettant d'utiliser PostgreSQL comme stockage réel.

La version 1.0 est marquée comme la première version stable prête pour une utilisation générale. Le public cible principal de FerretDB est constitué d'utilisateurs qui n'utilisent pas les fonctionnalités avancées de MongoDB dans leurs applications, mais qui souhaitent utiliser une pile logicielle complètement ouverte.

A son stade actuel de développement, FerretDB prend en charge un sous-ensemble de fonctionnalités MongoDB qui sont les plus couramment utilisés dans les applications typiques. La nécessité de mettre en œuvre FerretDB peut survenir dans le cadre de la transition de MongoDB vers une licence SSPL non libre, qui est basée sur la licence AGPLv3, mais n'est pas open source, car elle contient une exigence discriminatoire de fournir sous la licence SSPL non seulement le code applicatif lui-même, mais aussi les codes sources de tous les composants impliqués dans la fourniture de services cloud.

MongoDB occupe une niche entre les systèmes rapides et évolutifs qui fonctionnent sur des données clé/valeur et les SGBD des bases de données relationnelles fonctionnelles et faciles à interroger. MongoDB prend en charge le stockage de documents dans un format de type JSON, dispose d'un langage assez flexible pour créer des requêtes, peut créer des index pour divers attributs stockés, fournit un stockage efficace des grands objets binaires, prend en charge les opérations de journalisation pour modifier et ajouter des données à la base de données, peut fonctionner selon le paradigme Map/Reduce, prend en charge la réplication et la construction de configurations tolérantes aux pannes.

Principales nouveautés de FerretDB 1.0

Dans cette nouvelle version qui est présentée, il est mis en évidence que les commandes createIndexes et dropIndexes ont été implémentées pour créer et placer un ou plusieurs index sur une collection, en plus de la commande getMore a été implémenté pour afficher une nouvelle tranche du résultat récupéré d'exécuter des commandes qui renvoient un curseur, telles que rechercher et ajouter.

Un autre des changements qui se démarque de la nouvelle version ajout de la prise en charge de l'opérateur d'agrégation $sum pour calculer la somme des valeurs de groupe, ainsi que ce qui a été ajouté prise en charge des opérateurs $limit et $skip pour limiter le nombre et ignorer les documents lors de l'ajout et que la prise en charge de l'opérateur $count a été ajoutée pour compter les documents lors de l'ajout.

En plus de cela, il est également à noter que la prise en charge de l'opérateur $unwind a été ajoutée pour analyser les champs de tableau dans les documents entrants et former une liste avec un document séparé pour chaque élément du tableau et a également ajouté une prise en charge partielle des commandes collStats , dbStats et dataSize pour obtenir les statistiques de collecte et de base de données et la taille des données.

De l' d'autres changements qui se démarquent de la nouvelle version:

  • Les itérateurs sont maintenant utilisés pour `sort`, `limit`, `skip` et `projection`
  • Bump dépendances
  • Améliorations du suivi des ressources
  • Ajout de tests pour l'argument `skip` de `find` et `count
  • Fermez correctement l'itérateur
  • Améliorations apportées à l'initialisation de grands nombres dans les données de test

Enfin si vous souhaitez en savoir plus, vous pouvez vérifier les détails dans le lien suivant.

Pour ceux qui s'intéressent au code, sachez qu'il est écrit en Go et qu'il est distribué sous la licence Apache 2.0.

Et ils devraient savoir que la meilleure façon de tester FerretDB est de le modifier et de l'exécuter sur l'hôte (Linux, macOS ou Windows) avec PostgreSQL et d'autres dépendances s'exécutant dans des conteneurs Docker via Docker Compose.

Sous Linux, docker doit être installé sur l'hôte. Sur macOS et Windows, Docker Desktop doit être utilisé, tandis que sur Windows, il doit être configuré pour utiliser WSL 2 sans aucune distribution ; toutes les commandes doivent être exécutées sur l'hôte.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.