FerretDB 1.0 je već objavljen i ovo su njegove vijesti

FerretDB

FerretDB je osnovan da postane de facto zamjena otvorenog koda za MongoDB.

Lansiranje nova verzija FerretDB 1.0 projekta, koji vam omogućava da zamenite MongoDB-ov dokument orijentisan DBMS sa PostgreSQL-om bez ikakvih promena u kodu aplikacije. FerretDB je implementiran kao proxy server koji prevodi MongoDB pozive u SQL upitima u PostgreSQL, omogućavajući vam da koristite PostgreSQL kao stvarnu pohranu.

Verzija 1.0 je označena kao prvo stabilno izdanje spremno za opću upotrebu. FerretDB-ova primarna ciljna publika su korisnici koji ne koriste napredne karakteristike MongoDB-a u svojim aplikacijama, ali žele da koriste potpuno otvoren softverski stog.

U sadašnjoj fazi razvoja, FerretDB podržava podskup MongoDB funkcija koji se najčešće koriste u tipičnim aplikacijama. Potreba za implementacijom FerretDB-a može se pojaviti u vezi sa prelaskom MongoDB-a na neslobodnu SSPL licencu, koja se zasniva na AGPLv3 licenci, ali nije otvorenog koda, jer sadrži diskriminatorni zahtjev za isporuku pod SSPL licencom ne samo sam kod aplikacije, ali i izvorni kodovi svih komponenti uključenih u pružanje usluga u oblaku.

MongoDB zauzima nišu između brzih i skalabilnih sistema koji rade na podacima ključ/vrijednost i DBMS-ovima relacijske baze podataka koje su funkcionalne i koje je lako ispitivati. MongoDB podržava skladištenje dokumenata u formatu sličnom JSON-u, ima prilično fleksibilan jezik za pravljenje upita, može kreirati indekse za različite pohranjene atribute, pruža efikasno skladištenje binarnih velikih objekata, podržava operacije evidentiranja za promjenu i dodavanje podataka u bazu podataka, može raditi prema paradigmi Map/Reduce, podržava replikaciju i izgradnju konfiguracija otpornih na greške.

Glavne novine FerretDB 1.0

U ovoj novoj verziji koja je predstavljena, to je naglašeno implementirane su naredbe createIndexes i dropIndexes za kreiranje i postavljanje jednog ili više indeksa na kolekciju, pored naredbe getMore je implementiran za prikaz novog dijela dohvaćenog rezultata od izvršavanja naredbi koje vraćaju kursor, kao što je pronađi i dodaj.

Još jedna od promjena koja se izdvaja od nove verzije dodana podrška za $sum operator agregacije da se izračuna zbir grupnih vrijednosti, kao i ono što je dodano podrška za $limit i $skip operatore da ograničite broj i preskočite dokumente prilikom dodavanja i da je dodata podrška za operator $count za brojanje dokumenata prilikom dodavanja.

Pored ovoga, takođe se napominje da je dodata podrška za $unwind operator za raščlanjivanje polja niza u dolaznim dokumentima i formiranje liste sa zasebnim dokumentom za svaki element niza i takođe dodata delimična podrška za komande collStats , dbStats i dataSize da dobijete statistiku prikupljanja i baze podataka i veličinu podataka.

Of the druge promjene koje se ističu nove verzije:

  • Iteratori se sada koriste za `sortiranje`, `ograničenje`, `preskakanje` i `projekciju`
  • bump zavisnosti
  • Poboljšanja praćenja resursa
  • Dodati testovi za argument `skip` za `find` i `count
  • Ispravno zatvorite iterator
  • Poboljšanja inicijalizacije velikih brojeva u test podacima

Konačno ako ste zainteresirani da saznate više o tome, možete provjeriti detalje Na sledećem linku.

Za one koji su zainteresovani za kod, trebalo bi da znate da je napisan u Go i da se distribuira pod licencom Apache 2.0.

I oni bi to trebali znati najbolji način da testirate FerretDB je da ga modificirate i pokrenete na hostu (Linux, macOS ili Windows) sa PostgreSQL-om i drugim zavisnostima koji se pokreću unutar Docker kontejnera preko Docker Compose.

Na Linuxu, docker mora biti instaliran na hostu. Na macOS-u i Windows-u mora se koristiti Docker Desktop, dok na Windows-u mora biti konfigurisan da koristi WSL 2 bez ikakve distribucije; sve naredbe moraju biti izvršene na hostu.


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.