Rozsahy (horizontální datové oddíly)

Tabulky jsou rozdělené na rozsahy nebo horizontální oddíly dat. Každý rozsah je vodorovný segment tabulky, který obsahuje data a metadata, například čas vytvoření a volitelné značky. Sjednocení všech těchto rozsahů obsahuje celou datovou sadu tabulky. Rozsahy se rovnoměrně distribuují mezi uzly v clusteru a za účelem optimalizace výkonu se ukládají do mezipaměti v místním disku SSD i v paměti.

Rozsahy jsou neměnné, což znamená, že je možné je dotazovat, znovu přiřadit k jinému uzlu nebo vyřadit z tabulky, ale nikdy je neupravovat. K úpravě dat dochází vytvořením nových rozsahů a transakční výměnou starých rozsahů za nové. Neměnnost rozsahů poskytuje výhody, jako je zvýšená odolnost a snadný návrat k předchozím snímkům.

Rozsahy obsahují kolekci záznamů, které jsou fyzicky uspořádané do sloupců, což umožňuje efektivní kódování a kompresi dat. Kvůli zachování efektivity dotazů se menší rozsahy slučují do větších rozsahů podle nakonfigurovaných zásad sloučení a zásad horizontálního dělení. Slučování rozsahů snižuje režii správy a vede k optimalizaci indexu a lepší kompresi.

Životní cyklus běžného rozsahu je následující:

  1. Rozsah je vytvořen operací příjmu dat.
  2. Rozsah se sloučí s jinými rozsahy.
  3. Sloučený rozsah (pravděpodobně takový, který sleduje svůj rodokmen v jiných rozsahech) se nakonec z důvodu zásad uchovávání informací vyřadí.

Doba vytváření rozsahu

V každém rozsahu se sledují dvě hodnoty data a času : MinCreatedOn a MaxCreatedOn. Tyto hodnoty jsou zpočátku stejné, ale při sloučení rozsahu s jinými rozsahy se můžou změnit. Při sloučení rozsahu s jinými rozsahy jsou nové hodnoty podle původních minimálních a maximálních hodnot sloučených rozsahů.

Doba vytvoření rozsahu se používá pro následující účely:

  • Uchovávání: Rozsahy vytvořené dříve se zahodí dříve.
  • Ukládání do mezipaměti: Nedávno vytvořené rozsahy se uchovávají v horké mezipaměti.
  • Vzorkování: Při použití operací dotazů, jako je take, se preferují nedávné rozsahy.

Chcete-li přepsat čas vytvoření rozsahu, zadejte alternativní creationTime ve vlastnostech příjmu dat. To může být užitečné pro účely uchovávání dat, například pokud chcete data znovu ingestovat, ale nechcete, aby vypadala, jako by přišla pozdě.

Poznámka

Výpočet pro odebrání rozsahu na základě času používá čas vytvoření nejnovějšího rozsahu v rámci sloučeného rozsahu.