Το MongoDB είναι ένα σύστημα βάσης δεδομένων NoSQLπροσανατολισμένο στα έγγραφα, που αλλάζει τη ζωή για πολλούς προγραμματιστές, επιτρέποντάς τους να δημιουργούν εφαρμογές πιο γρήγορα από τις σχεσιακές βάσεις δεδομένων. Ωστόσο, η MongoDB έχει εγκαταλείψει τις ρίζες ανοιχτού κώδικα, αλλάζοντας την άδεια χρήσης σε SSPL, καθιστώντας το άχρηστο για πολλά εμπορικά έργα και έργα ανοιχτού κώδικα.
Πριν από αυτό, παρουσιάστηκε το MangoDB, το οποίο είναι μια τέλεια λύση για όσους αναζητούν μια εμπειρία ανάπτυξης MongoDB, καθώς το MangoDB προσφέρει ένα επίπεδο με την προσανατολισμένη στα έγγραφα υλοποίηση του πρωτοκόλλου MongoDB που τρέχει πάνω από το PostgreSQL.
Το έργο στοχεύει να παρέχει τη δυνατότητα μετεγκατάστασης εφαρμογών MongoDB στην PostgreSQL και μια πλήρως ανοιχτή στοίβα λογισμικού. Ο κώδικας είναι γραμμένος στη γλώσσα Go και διανέμεται με την άδεια Apache 2.0.
Λάβετε υπόψη ότι το MongoDB είναι ένα σύστημα διαχείρισης βάσεων δεδομένων προσανατολισμένο σε έγγραφα Μπορεί να διανεμηθεί σε οποιονδήποτε αριθμό υπολογιστών και δεν απαιτεί προκαθορισμένο σχήμα δεδομένων. Το οποίο επιτρέπει τον χειρισμό δομημένων αντικειμένων σε μορφή BSON (δυαδικό JSON), χωρίς προεπιλεγμένο σχήμα.
Με άλλα λόγια, τα κλειδιά μπορούν να προστεθούν ανά πάσα στιγμή "εν κινήσει", χωρίς επαναδιαμόρφωση της βάσης. Τα δεδομένα έχουν τη μορφή εγγράφων που με τη σειρά τους αποθηκεύονται σε συλλογές, μια συλλογή που περιέχει οποιοδήποτε αριθμό εγγράφων. Οι συλλογές είναι σαν πίνακες και τα έγγραφα είναι σαν εγγραφές σε σχεσιακές βάσεις δεδομένων.
Η δημόσια άδεια από την πλευρά του διακομιστή (SSPL) είναι μια ιδιόκτητη άδεια λογισμικού που αναπτύχθηκε από την MongoDB Inc. Σύμφωνα με την MongoDB, το SSPL βασίζεται στην άδεια AGPL3, με την προσθήκη μιας νέας ενότητας που «καθορίζει ξεκάθαρα και ρητά τους όρους για τη διανομή του αδειοδοτημένου προγράμματος ως υπηρεσία τρίτου μέρους», που απαιτεί να είναι διαθέσιμος όλος ο πηγαίος κώδικας όταν το λογισμικό διατίθεται στο κοινό ως μέρος μιας υπηρεσίας.
Αυτή η αλλαγή κυκλοφόρησε τον Οκτώβριο του 2018, όπου οι διανομές Debian, Red Hat Enterprise Linux και Fedora εγκατέλειψαν στη συνέχεια το MongoDB, αναφέροντας ανησυχίες για το SSPL. Η Amazon ξεκίνησε μια υποστηριζόμενη αλλά αποκλειστική υπηρεσία που ονομάζεται DocumentDB και φάνηκε ότι η SSPL δεν μπόρεσε να αυξήσει τα έσοδα cloud για το MongoDB. Οι περισσότεροι χρήστες MongoDB δεν χρειάζονται τις πολλές προηγμένες δυνατότητες που προσφέρει το MongoDB, αλλά χρειάζονται μια λύση βάσης δεδομένων ανοιχτού κώδικα και εδώ είναι που το MangoDB μπαίνει στο παιχνίδι.
Ο πυρήνας της λύσης μας είναι ένας διακομιστής μεσολάβησης χωρίς κατάσταση, ο οποίος μετατρέπει ερωτήματα πρωτοκόλλου MongoDB σε SQL και χρησιμοποιεί την PostgreSQL ως μηχανή βάσης δεδομένων. Θα είναι συμβατό με προγράμματα οδήγησης MongoDB και σε πολλές περιπτώσεις θα πρέπει να λειτουργεί ως άμεσος αντικαταστάτης του MongoDB.
Το MangoDB στοχεύει να γίνει η de facto εναλλακτική λύση ανοιχτού κώδικα στο MongoDB. Το MangoDB είναι ένας διακομιστής μεσολάβησης ανοιχτού κώδικα, ο οποίος μετατρέπει ερωτήματα ενσύρματου πρωτοκόλλου MongoDB σε SQL και χρησιμοποιεί την PostgreSQL ως μηχανή βάσης δεδομένων. Το MangoDB θα είναι συμβατό με τα προγράμματα οδήγησης MongoDB και θα λειτουργεί ως άμεσος αντικαταστάτης του MongoDB σε πολλές περιπτώσεις.
Το πρόγραμμα λειτουργεί ως διακομιστής μεσολάβησης που μεταφράζει τις κλήσεις προς το MangoDB σε ερωτήματα SQL σε PostgreSQL, χρησιμοποιώντας την PostgreSQL ως πραγματικό χώρο αποθήκευσης. Το έργο υποστηρίζει προγράμματα οδήγησης για MongoDB, αλλά βρίσκεται ακόμα στο στάδιο του πρωτοτύπου και δεν υποστηρίζει τις προηγμένες δυνατότητες του πρωτοκόλλου MongoDB, αν και είναι ήδη κατάλληλο για μετάφραση απλών εφαρμογών.
Η ανάγκη αποφυγής της χρήσης του MongoDB DBMS μπορεί να προκύψει λόγω της μετάβασης του έργου σε μια μη δωρεάν άδεια SSPL, η οποία βασίζεται στην άδεια AGPLv3, αλλά δεν είναι ανοιχτή, καθώς περιέχει μια διακριτική απαίτηση παροχής βάσει SSPL όχι μόνο τον κώδικα της ίδιας της εφαρμογής, αλλά και τους πηγαίους κωδικούς όλων των στοιχείων που εμπλέκονται στην παροχή υπηρεσιών cloud.
Τελικά αν ενδιαφέρεστε να μάθετε περισσότερα γι 'αυτό Σχετικά με το MangoDB, μπορείτε να ελέγξετε τις λεπτομέρειες Στον ακόλουθο σύνδεσμο.