shardování
Shardování (angl. sharding) je technika rozdělování velkého objemu dat do více samostatných částí, tzv. shardů, které jsou uloženy na různých serverech nebo uzlech clusteru. Hlavním cílem je zlepšit škálovatelnost, výkon a dostupnost tím, že zátěž a data lze distribuovat a paralelně zpracovávat. Na rozdíl od jednoduché replikace se shardování zabývá nejen duplikací, ale i fyzickým rozdělením dat podle klíče.
Princip spočívá v určení shard klíče (shard key) a směrování dotazů na odpovídající shard(y). Data mohou být
Typy shardingu: horizontální (rozdělení řádků tabulky podle shard klíče), vertikální (rozdělení sloupců či funkcionalit mezi shardami)
Výhody zahrnují škálovatelnost horizontálního rozkladu, paralelizaci dotazů, lepší dostupnost a izolaci zátěže. Nevýhody zahrnují složitost správy,
Použití: velké webové aplikace, e-commerce, sociální sítě a systémy s velkým objemem logů. Implementace se liší,
Poznámka: shardování je odlišné od replikace či partitioningu; jde o distribuované uložení dat na vícero uzlů,