FerretDB 1.0 вече е пусната и това са нейните новини

FerretDB

FerretDB е основана, за да стане де факто заместител на MongoDB с отворен код.

Стартирането на нова версия на проекта FerretDB 1.0, което ви позволява да замените ориентираната към документи СУБД на MongoDB с PostgreSQL, без да правите промени в кода на вашето приложение. FerretDB е внедрен като прокси сървър, който превежда MongoDB извиквания в SQL заявки към PostgreSQL, което ви позволява да използвате PostgreSQL като действително хранилище.

Версия 1.0 е маркирана като първата стабилна версия, готова за обща употреба. Основната целева аудитория на FerretDB са потребители, които не използват разширените функции на MongoDB в своите приложения, но искат да използват напълно отворен софтуерен стек.

На настоящия си етап на развитие, FerretDB поддържа подмножество от функции на MongoDB които се използват най-често в типичните приложения. Необходимостта от внедряване на FerretDB може да възникне във връзка с прехода на MongoDB към несвободен SSPL лиценз, който се основава на AGPLv3 лиценза, но не е с отворен код, тъй като съдържа дискриминационно изискване за доставка под SSPL лиценз не само самият код на приложението, но също и изходните кодове на всички компоненти, участващи в предоставянето на облачни услуги.

MongoDB заема ниша между бързи и мащабируеми системи, които работят с данни ключ/стойност и СУБД релационни бази данни, които са функционални и лесни за заявки. MongoDB поддържа съхраняване на документи във формат, подобен на JSON, има доста гъвкав език за изграждане на заявки, може да създава индекси за различни съхранени атрибути, осигурява ефективно съхранение на двоични големи обекти, поддържа операции за регистриране за промяна и добавяне на данни към базата данни, може да работи според парадигмата Map/Reduce, поддържа репликация и изграждане на устойчиви на грешки конфигурации.

Основни новости на FerretDB 1.0

В тази нова версия, която е представена, е подчертано, че командите createIndexes и dropIndexes са внедрени за създаване и поставяне на един или повече индекси в колекция, в допълнение към командата getMore беше внедрен за показване на нов отрязък от извлечения резултат от изпълнение на команди, които връщат курсор, като find и add.

Друга от промените, която се откроява от новата версия добавена поддръжка за оператора за агрегиране $sum за изчисляване на сумата от стойностите на групата, както и това, което е добавено поддръжка за операторите $limit и $skip за ограничаване на броя и пропускане на документи при добавяне и че беше добавена поддръжка за оператора $count за броене на документи при добавяне.

В допълнение към това се отбелязва също, че е добавена поддръжка за оператора $unwind за анализиране на полетата на масива във входящи документи и формиране на списък с отделен документ за всеки елемент от масива и също така е добавена частична поддръжка за командите collStats, dbStats и dataSize за получаване на статистически данни за събиране и база данни и размера на данните.

От други промени, които се открояват на новата версия:

  • Итераторите вече се използват за `sort`, `limit`, `skip` и `projection`
  • Бум зависимости
  • Подобрения в проследяването на ресурсите
  • Добавени тестове за аргумента „пропускане“ на „намери“ и „брой“.
  • Затворете правилно итератора
  • Подобрения при инициализиране на големи числа в тестови данни

Накрая ако се интересувате да научите повече за това, можете да проверите подробностите В следващия линк.

За тези, които се интересуват от кода, трябва да знаете, че той е написан на Go и се разпространява под лиценза Apache 2.0.

И те трябва да знаят това най-добрият начин да тествате FerretDB е да го модифицирате и стартирате на хоста (Linux, macOS или Windows) с PostgreSQL и други зависимости, работещи в Docker контейнери чрез Docker Compose.

В Linux докерът трябва да бъде инсталиран на хоста. В macOS и Windows трябва да се използва Docker Desktop, докато в Windows той трябва да бъде конфигуриран да използва WSL 2 без никакво разпространение; всички команди трябва да се изпълняват на хоста.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорник за данните: AB Internet Networks 2008 SL
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.