FerretDB 1.0 již vyšel a toto jsou jeho novinky

FerretDB

FerretDB byl založen, aby se stal de facto open source náhradou za MongoDB.

Spuštění nová verze projektu FerretDB 1.0, který vám umožňuje nahradit dokumentově orientovaný DBMS MongoDB PostgreSQL bez jakýchkoli změn v kódu vaší aplikace. FerretDB je implementován jako proxy server, který překládá volání MongoDB v SQL dotazech do PostgreSQL, což vám umožňuje používat PostgreSQL jako skutečné úložiště.

Verze 1.0 je označena jako první stabilní vydání připravené k obecnému použití. Primární cílovou skupinou FerretDB jsou uživatelé, kteří ve svých aplikacích nepoužívají pokročilé funkce MongoDB, ale chtějí používat zcela otevřený softwarový stack.

V současné fázi vývoje, FerretDB podporuje podmnožinu funkcí MongoDB které se nejčastěji používají v typických aplikacích. Potřeba implementace FerretDB může vyvstat v souvislosti s přechodem MongoDB na nesvobodnou licenci SSPL, která je založena na licenci AGPLv3, ale není open source, neboť obsahuje diskriminační požadavek na dodávku pod licencí SSPL nejen samotný aplikační kód, ale také zdrojové kódy všech komponent podílejících se na poskytování cloudových služeb.

MongoDB zaujímá mezeru mezi rychlými a škálovatelnými systémy, které pracují na datech klíč/hodnota a DBMS relační databáze, které jsou funkční a snadno se dotazují. MongoDB podporuje ukládání dokumentů ve formátu podobném JSON, má poměrně flexibilní jazyk pro vytváření dotazů, umí vytvářet indexy pro různé uložené atributy, poskytuje efektivní ukládání binárních velkých objektů, podporuje operace protokolování pro změnu a přidávání dat do databáze, umí pracovat podle paradigmatu Map/Reduce podporuje replikaci a vytváření konfigurací odolných vůči chybám.

Hlavní novinky FerretDB 1.0

V této nové verzi, která je prezentována, je to zdůrazněno byly implementovány příkazy createIndexes a dropIndexes k vytvoření a umístění jednoho nebo více indexů do kolekce, kromě příkazu getMore byl implementován pro zobrazení nového řezu načteného výsledku od provádění příkazů, které vracejí kurzor, jako je najít a přidat.

Další ze změn, která vyčnívá z nové verze přidána podpora pro operátor agregace $sum vypočítat součet skupinových hodnot a také to, co bylo přidáno podpora operátorů $limit a $skip omezit počet a přeskočit dokumenty při přidávání a že byla přidána podpora operátoru $count k počítání dokumentů při přidávání.

Kromě toho je také třeba poznamenat, že byla přidána podpora pro operátor $unwind pro analýzu polí pole v příchozích dokumentech a vytvoření seznamu se samostatným dokumentem pro každý prvek pole a také byla přidána částečná podpora pro příkazy collStats , dbStats a dataSize k získání statistiky kolekce a databáze a velikosti dat.

Z další změny, které vynikají nové verze:

  • Iterátory se nyní používají pro `sort`, `limit`, `skip` a `projection`
  • nárazové závislosti
  • Vylepšení sledování zdrojů
  • Přidány testy pro argument `přeskočit` `najít` a `počet
  • Zavřete správně iterátor
  • Vylepšení inicializace velkých čísel v testovacích datech

Konečně pokud máte zájem o tom vědět více, můžete zkontrolovat podrobnosti Na následujícím odkazu.

Pro zájemce o kód byste měli vědět, že je napsán v Go a je distribuován pod licencí Apache 2.0.

A měli by to vědět nejlepší způsob, jak otestovat FerretDB, je upravit jej a spustit na hostiteli (Linux, macOS nebo Windows) s PostgreSQL a dalšími závislostmi spuštěnými uvnitř kontejnerů Docker prostřednictvím Docker Compose.

V systému Linux musí být na hostiteli nainstalován docker. V systémech macOS a Windows je nutné používat Docker Desktop, zatímco ve Windows je nutné jej nakonfigurovat tak, aby používal WSL 2 bez jakékoli distribuce; všechny příkazy musí být provedeny na hostiteli.


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Za data odpovídá: AB Internet Networks 2008 SL
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.