FerretDB 1.0 on juba välja antud ja need on selle uudised

FerretDB

FerretDB asutati selleks, et saada MongoDB de facto avatud lähtekoodiga asendajaks.

Käivitamine projekti FerretDB 1.0 uus versioon, mis võimaldab teil asendada MongoDB dokumendile orienteeritud DBMS-i PostgreSQL-iga ilma rakenduse koodis muudatusi tegemata. FerretDB on rakendatud puhverserverina, mis tõlgib SQL-päringutes olevad MongoDB-kõned PostgreSQL-i, võimaldades teil kasutada PostgreSQL-i tegeliku salvestusruumina.

Versioon 1.0 on märgitud esimeseks stabiilseks väljalaseks, mis on valmis üldiseks kasutamiseks. FerretDB esmaseks sihtrühmaks on kasutajad, kes ei kasuta oma rakendustes MongoDB täiustatud funktsioone, vaid soovivad kasutada täiesti avatud tarkvarapinu.

Oma praeguses arengujärgus FerretDB toetab MongoDB funktsioonide alamhulka mida kasutatakse kõige sagedamini tüüpilistes rakendustes. FerretDB juurutamise vajadus võib tekkida seoses MongoDB üleminekuga mittevabale SSPL-litsentsile, mis põhineb AGPLv3 litsentsil, kuid ei ole avatud lähtekoodiga, kuna sisaldab diskrimineerivat nõuet tarnida SSPL-litsentsi alusel mitte ainult rakenduse kood ise, aga ka kõigi pilveteenuste pakkumisega seotud komponentide lähtekoodid.

MongoDB hõivab niši kiirete ja skaleeritavate süsteemide vahel, mis töötavad võtme/väärtuse andmetel ja DBMS-idel relatsioonilised andmebaasid, mis on funktsionaalsed ja mida on lihtne päringuid teha. MongoDB toetab dokumentide salvestamist JSON-laadses vormingus, omab üsna paindlikku keelt päringute koostamiseks, suudab luua indekseid erinevatele salvestatud atribuutidele, pakub tõhusat binaarsete suurte objektide salvestamist, toetab logimisoperatsioone andmete muutmiseks ja andmebaasi lisamiseks, võib töötada vastavalt kaardistamise/vähendamise paradigmale toetab replikatsiooni ja veakindlate konfiguratsioonide loomist.

FerretDB 1.0 peamised uuendused

Selles esitletavas uues versioonis on rõhutatud, et käsud createIndexes ja dropIndexes on rakendatud lisaks käsule ühe või mitme indeksi loomiseks ja paigutamiseks kogusse Hangitud tulemuse uue lõigu kuvamiseks rakendati getMore kursori tagastavate käskude (nt otsimine ja lisamine) täitmisest.

Veel üks muudatustest, mis uuest versioonist silma paistab lisatud tugi $ summa koondamise operaatorile et arvutada rühma väärtuste summa, samuti see, mis lisati $limit ja $skip operaatorite tugi dokumentide arvu piiramiseks ja lisamisel vahele jätmiseks ning dokumentide loendamiseks lisamisel lisati operaatori $count tugi.

Lisaks märgitakse, et lisati tugi operaatorile $unwind, et sõeluda sissetulevates dokumentides massiivi välju ja moodustada loendi eraldi dokumendiga iga massiivi elemendi kohta, samuti lisati osaline tugi käskudele collStats , dbStats ja dataSize kogumise ja andmebaasi statistika ning andmete suuruse saamiseks.

Kohta muud silma paistvad muudatused uue versiooni:

  • Iteraatoreid kasutatakse nüüd sortimiseks, piiramiseks, vahelejätmiseks ja projekteerimiseks
  • löögi sõltuvused
  • Ressursside jälgimise täiustused
  • Lisatud testid argumendile "otsi" ja "loenda" vahelejätmiseks
  • Sulgege iteraator korralikult
  • Testandmete suurte arvude lähtestamise täiustused

Lõpuks kui olete huvitatud sellest rohkem teada saama, saate üksikasju vaadata Järgmisel lingil.

Need, kes koodi vastu huvi tunnevad, peaksid teadma, et see on kirjutatud Go keeles ja seda levitatakse Apache 2.0 litsentsi all.

Ja nad peaksid seda teadma parim viis FerretDB testimiseks on seda muuta ja hostis käivitada (Linux, macOS või Windows) koos PostgreSQL-i ja muude sõltuvustega, mis töötavad Dockeri konteinerites Docker Compose'i kaudu.

Linuxis peab dokkimisseade olema hosti installitud. MacOS-is ja Windowsis tuleb kasutada Docker Desktopi, samas kui Windowsis peab see olema konfigureeritud kasutama WSL 2 ilma igasuguse levitamiseta; kõik käsud tuleb käivitada hostis.


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutav: AB Internet Networks 2008 SL
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.