Κυκλοφορία του FerretDB 0.3, μια υλοποίηση του MongoDB που βασίζεται στο PostgreSQL DBMS

Δημοσιεύτηκε η κυκλοφορία του έργου FerretDB 0.3, το οποίο σας επιτρέπει να αντικαταστήσετε το DBMS MongoDB που βασίζεται σε έγγραφα με το PostgreSQL χωρίς να κάνετε αλλαγές στον κώδικα της εφαρμογής. Το FerretDB υλοποιείται ως διακομιστής μεσολάβησης που μεταφράζει τις κλήσεις προς το MongoDB σε ερωτήματα SQL στο PostgreSQL, το οποίο σας επιτρέπει να χρησιμοποιείτε το PostgreSQL ως πραγματικό χώρο αποθήκευσης. Ο κώδικας είναι γραμμένος στο Go και διανέμεται με την άδεια Apache 2.0.

Η ανάγκη για μετεγκατάσταση μπορεί να προκύψει σε σχέση με τη μετάβαση του MongoDB σε μια μη δωρεάν άδεια SSPL, η οποία βασίζεται στην άδεια AGPLv3, αλλά δεν είναι ανοιχτή, καθώς περιέχει μια διακριτική απαίτηση να παρέχεται βάσει της άδειας SSPL όχι μόνο η εφαρμογή τον ίδιο τον κώδικα, αλλά και τους πηγαίους κώδικες όλων των στοιχείων που εμπλέκονται στην παροχή υπηρεσιών cloud.

Το κύριο κοινό-στόχος για το FerretDB είναι χρήστες που δεν χρησιμοποιούν προηγμένες λειτουργίες MongoDB στις εφαρμογές τους, αλλά θέλουν να χρησιμοποιήσουν μια εντελώς ανοιχτή στοίβα λογισμικού. Στο τρέχον στάδιο ανάπτυξης, το FerretDB εξακολουθεί να υποστηρίζει μόνο ένα μέρος των λειτουργιών MongoDB που χρησιμοποιούνται συχνότερα σε τυπικές εφαρμογές. Στο μέλλον, σχεδιάζουν να επιτύχουν πλήρη συμβατότητα με προγράμματα οδήγησης για το MongoDB και να παρέχουν τη δυνατότητα χρήσης του FerretDB ως διαφανούς αντικατάστασης του MongoDB.

Το MongoDB καταλαμβάνει μια θέση μεταξύ γρήγορων και επεκτάσιμων συστημάτων που λειτουργούν σε δεδομένα κλειδιού/τιμής και σχεσιακών DBMS που είναι λειτουργικά και εύκολα στην αναζήτηση. Το MongoDB υποστηρίζει την αποθήκευση εγγράφων σε μορφή JSON, έχει μια αρκετά ευέλικτη γλώσσα για τη δημιουργία ερωτημάτων, μπορεί να δημιουργήσει ευρετήρια για διάφορα αποθηκευμένα χαρακτηριστικά, παρέχει αποτελεσματικά αποθήκευση μεγάλων δυαδικών αντικειμένων, υποστηρίζει καταγραφή λειτουργιών για αλλαγή και προσθήκη δεδομένων στη βάση δεδομένων, μπορεί λειτουργεί σύμφωνα με το παράδειγμα Χάρτης/Μείωση, υποστηρίζει την αναπαραγωγή και τη δημιουργία διαμορφώσεων ανεκτικών σφαλμάτων.

Η έκδοση FerretDB 0.3 εισήγαγε την εντολή findAndModify, η οποία τροποποιεί ένα έγγραφο αλλά το επιστρέφει στην αρχική του έκδοση. Οι τελεστές ενημέρωσης πεδίου $inc και $set έχουν εφαρμοστεί. Προστέθηκε υποστήριξη για ταξινόμηση βαθμωτών τύπων δεδομένων.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο