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 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.
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á