MangoDB: alternatywa open source dla MongoDB

MongoDB to system baz danych NoSQL, zorientowany na dokumenty, który zmienia życie wielu programistów, umożliwiając im tworzenie aplikacji szybciej niż w przypadku relacyjnych baz danych. Jednak MongoDB porzuciło swoje korzenie open source, zmieniając licencję na SSPL, co czyni go bezużytecznym dla wielu projektów open source i komercyjnych.

W związku z tym zaprezentowano MangoDB, które jest idealnym rozwiązaniem Dla tych, którzy szukają doświadczenia w programowaniu MongoDB, MangoDB oferuje warstwową zorientowaną na dokumenty implementację protokołu MongoDB, który działa na bazie PostgreSQL.

Projekt ma na celu zapewnienie możliwości migracji aplikacji MongoDB do PostgreSQL i całkowicie otwarty stos oprogramowania. Kod jest napisany w języku Go i jest dystrybuowany na licencji Apache 2.0.

Należy pamiętać, że MongoDB to zorientowany na dokumenty system zarządzania bazą danych. który może być dystrybuowany do dowolnej liczby komputerów i nie wymaga predefiniowanego schematu danych. Co pozwala na obsługę obiektów strukturalnych w formacie BSON (binary JSON), bez domyślnego schematu.

Innymi słowy, klucze można dodawać w dowolnym momencie „w locie”, bez rekonfiguracji bazy. Dane mają postać dokumentów, które z kolei są przechowywane w zbiorach, zbiorze zawierającym dowolną liczbę dokumentów. Kolekcje są jak tabele, a dokumenty jak rekordy w relacyjnych bazach danych.

Licencja publiczna po stronie serwera (SSPL) to zastrzeżona licencja na oprogramowanie opracowana przez MongoDB Inc.. Według MongoDB, SSPL opiera się na licencji AGPL3, z dodaniem nowej sekcji, która „jasno i wyraźnie określa warunki dystrybucji licencjonowanego programu jako usługi strony trzeciej”, która wymaga udostępnienia całego kodu źródłowego gdy Oprogramowanie jest udostępniane publicznie w ramach usługi.

Ta zmiana został wdrożony w październiku 2018 r., do którego dystrybucje Debian, Red Hat Enterprise Linux i Fedora następnie porzuciły MongoDB, powołując się na obawy dotyczące SSPL. Amazon wydał obsługiwaną, ale zastrzeżoną usługę o nazwie DocumentDB i wydawało się, że SSPL nie może zwiększyć przychodów z chmury dla MongoDB. Większość użytkowników MongoDB nie potrzebuje wielu zaawansowanych funkcji, które oferuje MongoDB, ale potrzebują rozwiązania bazodanowego typu open source i tu właśnie pojawia się MangoDB.

Rdzeniem naszego rozwiązania jest bezstanowe proxy, które konwertuje zapytania protokołu MongoDB na SQL i wykorzystuje PostgreSQL jako silnik bazy danych. Będzie kompatybilny ze sterownikami MongoDB iw wielu przypadkach powinien działać jako bezpośredni zamiennik MongoDB.

MangoDB ma na celu stać się de facto otwartą alternatywą dla MongoDB. MangoDB to serwer proxy typu open source, który konwertuje zapytania protokołu przewodowego MongoDB na SQL i wykorzystuje PostgreSQL jako silnik bazy danych. MangoDB będzie kompatybilne ze sterownikami MongoDB i w wielu przypadkach będzie działać jako bezpośredni zamiennik MongoDB.

Program działa w formie proxy, które tłumaczy wywołania do MangoDB w zapytaniach SQL na PostgreSQL, używając PostgreSQL jako faktycznej pamięci. Projekt obsługuje sterowniki dla MongoDB, ale jest jeszcze w fazie prototypu i nie obsługuje zaawansowanych funkcji protokołu MongoDB, chociaż już teraz nadaje się do tłumaczenia prostych aplikacji.

Konieczność uniknięcia korzystania z DBMS MongoDB może powstać w związku z przejściem projektu na niewolną licencję SSPL, która bazuje na licencji AGPLv3, ale nie jest otwarta, gdyż zawiera dyskryminujący wymóg dostarczania w ramach SSPL nie tylko sam kod aplikacji, ale także kody źródłowe wszystkich komponentów zaangażowanych w świadczenie usług w chmurze.

W końcu jeśli chcesz dowiedzieć się więcej na ten temat o MangoDB, możesz sprawdzić szczegóły W poniższym linku.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.