GNU/Linux >> Znalost Linux >  >> Cent OS

Co je distribuovaná databáze?

Úvod

Pro horizontální škálování se používají distribuované databáze a jsou navrženy tak, aby splňovaly požadavky na pracovní zátěž bez nutnosti provádět změny v databázové aplikaci nebo vertikálně škálovat jeden počítač.

Distribuované databáze řeší různé problémy , jako je dostupnost, odolnost proti chybám, propustnost, latence, škálovatelnost a mnoho dalších problémů, které mohou nastat při používání jednoho počítače a jedné databáze.

V tomto článku se dozvíte, co jsou distribuované databáze a jaké jsou jejich výhody a nevýhody.

Definice distribuované databáze

Distribuovaná databáze představuje více vzájemně propojených databází rozmístěných na několika místech propojených sítí. Vzhledem k tomu, že jsou všechny databáze propojeny, zobrazují se uživatelům jako jedna databáze.

Distribuované databáze využívají více uzlů. Mají horizontální měřítko a vytvářejí distribuovaný systém. Více uzlů v systému poskytuje větší výpočetní výkon, nabízí větší dostupnost a řeší problém jediného bodu selhání.

Různé části distribuované databáze jsou uloženy v několika fyzických umístěních a požadavky na zpracování jsou rozděleny mezi procesory ve více databázových uzlech.

Centralizovaný systém správy distribuované databáze (DDBMS ) spravuje distribuovaná data, jako by byla uložena na jednom fyzickém místě. DDBMS synchronizuje všechny datové operace mezi databázemi a zajišťuje, aby se aktualizace v jedné databázi automaticky projevily v databázích na jiných místech.

Funkce distribuované databáze

Některé obecné vlastnosti distribuovaných databází jsou:

  • Nezávislost na místě - Data jsou fyzicky uložena na více místech a spravována nezávislým DDBMS.
  • Distribuované zpracování dotazů - Distribuované databáze odpovídají na dotazy v distribuovaném prostředí, které spravuje data na více místech. Dotazy na vysoké úrovni jsou transformovány do plánu provádění dotazů pro jednodušší správu.
  • Správa distribuovaných transakcí - Poskytuje konzistentní distribuovanou databázi prostřednictvím protokolů odevzdání, technik distribuované kontroly souběžnosti a distribuovaných metod obnovy v případě mnoha transakcí a selhání.
  • Bezproblémová integrace - Databáze v kolekci obvykle představují jednu logickou databázi a jsou vzájemně propojeny.
  • Propojení sítí - Všechny databáze v kolekci jsou propojeny sítí a komunikují spolu.
  • Zpracování transakce - Distribuované databáze zahrnují transakční zpracování, což je program obsahující soubor jedné nebo více databázových operací. Zpracování transakcí je atomický proces, který je buď zcela proveden, nebo neproběhne vůbec.

Typy distribuovaných databází

Existují dva typy distribuovaných databází:

  • Homogenní
  • Heterogenní

Homogenní

Homogenní distribuovaná databáze je síť identických databází uloženy na více stránkách. Stránky mají stejný operační systém, DDBMS a datovou strukturu, takže je lze snadno spravovat.

Homogenní databáze umožňují uživatelům bezproblémový přístup k datům z každé z databází.

Následující diagram ukazuje příklad homogenní databáze:

Heterogenní

Heterogenní distribuovaná databáze používá různé schémata, operační systémy, DDBMS a různé datové modely.

V případě heterogenní distribuované databáze může konkrétní stránka vůbec neznát jiné stránky, což způsobuje omezenou spolupráci při zpracování požadavků uživatelů. Omezení je důvodem, proč jsou k navázání komunikace mezi weby vyžadovány překlady.

Následující diagram ukazuje příklad heterogenní databáze:

Úložiště distribuované databáze

Distribuované databázové úložiště je spravováno dvěma způsoby:

  • Replikace
  • Fragmentace

Replikace

Při replikaci databáze systémy ukládají kopie dat na různých místech . Pokud je celá databáze dostupná na více místech, jedná se o plně redundantní databázi.

Výhodou replikace databáze je, že zvyšuje dostupnost dat o n různých webech a umožňuje paralelní zpracování požadavků na dotazy.

Replikace databáze však znamená, že data vyžadují neustálé aktualizace a synchronizaci s jinými weby, aby byla zachována přesná kopie databáze. Jakékoli změny provedené na jednom webu musí být zaznamenány na jiných webech, jinak dojde k nesrovnalostem.

Neustálé aktualizace způsobují mnoho serverové režie a komplikují kontrolu souběžnosti, protože mnoho souběžných dotazů musí být kontrolováno na všech dostupných webech.

Fragmentace

Pokud jde o fragmentaci úložiště distribuované databáze, vztahy jsou fragmentované, což znamená, že jsou rozděleny na menší části . Každý z fragmentů je uložen na jiném místě, kde je vyžadován.

Předpokladem fragmentace je zajistit, aby fragmenty mohly být později rekonstruovány do původního vztahu bez ztráty dat.

Výhodou fragmentace je, že neexistují žádné kopie dat , což zabraňuje nekonzistenci dat.

Existují dva typy fragmentace:

  • Horizontální fragmentace – Schéma vztahu je fragmentováno do skupin řádků a každá skupina (n-tice) je přiřazena k jednomu fragmentu.
  • Vertikální fragmentace - Schéma relací je fragmentováno na menší schémata a každý fragment obsahuje společný kandidátský klíč, který zaručuje bezztrátové spojení.

Výhody a nevýhody distribuované databáze

Níže jsou uvedeny některé klíčové výhody a nevýhody distribuovaných databází:

Výhody Nevýhody
Modulární vývoj Nákladný software
Spolehlivost Velká režie
Nižší náklady na komunikaci Integrita dat
Lepší odezva Nesprávná distribuce dat

Výhody a nevýhody jsou podrobně vysvětleny v následujících částech.

Výhody

  • Modulární vývoj . Modulární vývoj distribuované databáze znamená, že systém lze rozšířit do nových umístění nebo jednotek přidáním nových serverů a dat do stávajícího nastavení a jejich připojením k distribuovanému systému bez přerušení. Tento typ rozšíření nezpůsobuje žádná přerušení fungování distribuovaných databází.
  • Spolehlivost . Distribuované databáze nabízejí větší spolehlivost na rozdíl od centralizovaných databází. V případě selhání databáze v centralizované databázi se systém úplně zastaví. V distribuované databázi systém funguje, i když dojde k selhání, pouze poskytuje snížený výkon, dokud nebude problém vyřešen.
  • Nižší komunikační náklady . Lokální ukládání dat snižuje komunikační náklady na manipulaci s daty v distribuovaných databázích. Lokální ukládání dat není možné v centralizovaných databázích.
  • Lepší odezva . Efektivní distribuce dat v distribuovaném databázovém systému poskytuje rychlejší odezvu, když jsou požadavky uživatelů splněny lokálně. V centralizovaných databázích procházejí požadavky uživatelů centrálním strojem, který zpracovává všechny požadavky. Výsledkem je prodloužení doby odezvy, zejména u velkého množství dotazů.

Nevýhody

  • Nákladný software . Zajištění transparentnosti dat a koordinace na více místech často vyžaduje použití drahého softwaru v distribuovaném databázovém systému.
  • Velká režie . Mnoho operací na více místech vyžaduje četné výpočty a neustálou synchronizaci při použití replikace databáze, což způsobuje velkou režii zpracování.
  • Integrita dat . Možným problémem při použití replikace databáze je integrita dat, která je narušena aktualizací dat na více místech.
  • Nesprávná distribuce dat . Reakce na požadavky uživatelů do značné míry závisí na správné distribuci dat. To znamená, že odezva může být snížena, pokud data nejsou správně distribuována na více webech.

Cent OS
  1. Co je speedtest-cli?

  2. Jak nainstalovat Cassandra Distributed Database na CentOS 7

  3. Distribuovaná databáze NoSQL Elasticsearch – co to je a měli byste ji používat?

  1. Co je databáze NoSQL? – Vysvětlení NoSQL

  2. Co je Web 3.0?

  3. Co je to relační databáze?

  1. Co je HDFS? Průvodce distribuovaným souborovým systémem Hadoop

  2. Co je relační databáze?

  3. Co je databázový server a k čemu se používá?