Co je replikace?

V databázových systémech je replikace proces vytváření kopií dat a distribuce těchto kopií na jedno nebo více vzdálených míst. Replikace může být synchronní nebo asynchronní. Při synchronní replikaci odesílatel čeká na potvrzení od příjemce, že úspěšně přijal data, a teprve poté přenos ukončí (např. TCP). Asynchronní replikace toto potvrzení ze strany příjemce nevyžaduje a lze ji použít, pokud je důležité minimalizovat zpoždění komunikace mezi odeslaným a příjemcem (např. UDP).

co-je-replikace

 Co je to replikace (Zdroj fotky: Freepik.com)

Kde se replikace používá

Replikace se používá k zajištění vysoké dostupnosti, zlepšení škálovatelnosti a podpory geograficky distribuovaného použití. Lze ji použít jak pro zálohování dat, tak pro jejich distribuci. Systémy dat obvykle fungují v konfiguraci master-slave záloh, kdy existuje jeden server a více slave serverů, přičemž master server udržuje "zlatou kopii" datové sady na svém lokálním úložném zařízení, zatímco slave servery obsahují pouze kopie aktualizovaných záznamů od poslední synchronizace s hlavním serverem.

Toto uspořádání umožňuje zkrátit dobu obnovy v případě selhání systému, protože je třeba obnovit provoz pouze jednoho stroje; všechny aktualizace od poslední synchronizace jsou již přítomny na ostatních strojích v síti.

Replikaci lze také použít jako součást služeb cloud computingu, kdy chce zákazník udržovat svá data.

darky-pro-ajtaky

Jak replikace funguje

  • Replikace je proces kopírování dat z jednoho místa na druhé. V MySQL a MariaDB je replikace spuštěna pomocí binárního protokolu, což je soubor, který zaznamenává všechny příkazy SQL provedené na hlavním serveru.

  • Když se podřízený server spustí, stáhne si poslední binární protokol z hlavního serveru a přehraje všechny příkazy, aby dohnal aktuální stav hlavního serveru.

  • Když chcete provést změny na hlavním serveru, například přidat nebo aktualizovat data, můžete tak učinit tím, že to provedete skrz podřízené servery.

  • Když jste pak připraveni, můžete použít mySQLdump --local-infile=0 k výpisu databáze a jejímu načtení do podřízeného serveru, aby ji mohli používat klienti.


Pro Dudlu napsala: Marcela Kalousová | Editace: Andrea Bělohradská

Vyberte si příslušenství k PC:

Pokračujte v čtení blogu: