Co je Případné konzistence?

Případná konzistence je programovací model, ve kterém programátoři předpokládají, že po dostatečně dlouhou dobu a bez změn systému bude aktuální verze konkrétního programu nakonec distribuována, dokud nebude každá replika programu konzistentní. Koncept eventuální konzistence se používá v programovacích metodách, jako je optimistická replikace, distribuovaná sdílená paměť a distribuované transakce. Pokud jde o databáze, případné konzistence je dosaženo prostřednictvím tříkrokového procesu. Za prvé, distribuované informace jsou k dispozici v systému; následuje měkký stav, ve kterém různí uživatelé mohou stále pracovat s různými verzemi dat; a nakonec je dosaženo konzistence a všechny počítače mají přístup ke stejným datům.

Jeden z nejviditelnějších způsobů, jak je aplikována konzistence, souvisí s aktualizacemi softwaru distribuovanými online. Prvních několik sekund po vydání aktualizace ji nikdo nebude mít; uživatelům softwaru nezbývá dost času na stažení a instalaci aktualizace. To je „k dispozici“ state; aktualizace existuje, ale má přesto být distribuovány. Postupem času, jak uživatelé stahují aktualizaci, ji někteří budou mít a jiní ne. Po uplynutí dostatečného času však bude každý, kdo software používá, aktualizován na nejnovější verzi. Toto je předpoklad za stavem případné konzistence: při dostatečném čase se veškerá aktualizace bude plně šířit v celém systému.

Protože systém pracuje na možné konzistenci, jsou konflikty nevyhnutelné. K tomu dochází, když verze programu nebo informace aktuálně v počítači neodpovídají „modelové verzi“ programu. Programy jsou obvykle nastavit, aby k těmto konfliktům a řídit je. Pokud jsou soubory na konkrétním počítači starší než nejnovější verze příslušného softwaru nebo dat, systém obvykle vyzve uživatele, aby zahájil aktualizaci a vyřešil tak rozdíl.

K dispozici jsou tři možné metody k provedení těchto řešení: oprava zápisu, oprava čtení a asynchronní oprava. Všechny tyto metody uvádějí verzi programu nebo dat do souladu s konzistentním modelem. Klíčový rozdíl mezi nimi souvisí se způsobem, jakým systém časy opravuje. Všechny tyto operace mají výhody a nevýhody.

Při opravě zápisu se změny kódu uloženého v počítači provádějí během operace zápisu, kdy počítač již něco zapisuje na pevný disk systému. To opravuje nekonzistenci, uvádí program nebo data do souladu s modelem, ale také dočasně zpomaluje původní operaci zápisu. V případě opravy čtení dochází k nápravné operaci během cyklu čtení z pevného disku. To zase zpomaluje operace čtení. Při asynchronní opravě dochází k opravě, když nedochází ani ke čtení ani zápisu, což vede ke spotřebě nečinných cyklů na CPU.

JINÉ JAZYKY

Pomohl vám tento článek? Děkuji za zpětnou vazbu Děkuji za zpětnou vazbu

Jak můžeme pomoci? Jak můžeme pomoci?