Zásady ukládání do mezipaměti (horká a studená mezipaměť)
Platí pro: ✅Microsoft Fabric✅Azure Data Explorer
K zajištění rychlého výkonu dotazů se používá vícevrstvý systém mezipaměti dat. Data jsou uložená ve spolehlivém úložišti, ale jejich části se ukládají do mezipaměti na uzlech zpracování, SSD nebo dokonce v paměti RAM pro rychlejší přístup.
Zásady ukládání do mezipaměti umožňují zvolit, která data se mají ukládat do mezipaměti. Mezi mezipamětí horkých dat a mezi mezipamětí studených dat můžete rozlišovat nastavením zásad ukládání do mezipaměti u horkých dat. Horká data se uchovávají v místním úložišti SSD kvůli rychlejšímu výkonu dotazů, zatímco studená data jsou uložená ve spolehlivém úložišti, což je levnější, ale pomalejší přístup.
Mezipaměť používá 95 % místního disku SSD pro horká data. Pokud není dostatek místa, nejnovější data se v mezipaměti přednostně uchovávají. Zbývající 5 % se používá pro data, která nejsou zařazena do kategorií jako horká. Tento návrh zajistí, že dotazy načítající velké množství studených dat nebudou z mezipaměti vyřazovat horká data.
Nejlepšího výkonu dotazů dosáhnete, když se všechna ingestovaná data ukládají do mezipaměti. Některá data však nemusí zaručovat náklady na uchovávání v horké mezipaměti. Například zřídka přístupné staré záznamy protokolu můžou být považovány za méně zásadní. Vtakovýchch
Pomocí příkazů pro správu můžete změnit zásady ukládání do mezipaměti na úrovni databáze, tabulky nebo materializovaného zobrazení .
Poznámka:
Informace o spotřebě najdete v tématu Eventhouse a KQL database consumption.
Pomocí příkazů pro správu můžete změnit zásady ukládání do mezipaměti na úrovni clusteru, databáze, tabulky nebo materializovaného zobrazení.
Tip
Váš cluster je navržený pro ad hoc dotazy s průběžnými sadami výsledků, které se vejdou do celkové paměti RAM clusteru. U velkých úloh, jako je například redukce mapování, může být užitečné ukládat přechodné výsledky v trvalém úložišti. Uděláte to tak, že vytvoříte úlohu průběžného exportu. Tato funkce umožňuje provádět dlouhotrvající dávkové dotazy pomocí služeb, jako je HDInsight nebo Azure Databricks.
Způsob použití zásad ukládání do mezipaměti
Když se data ingestují, systém sleduje datum a čas příjmu dat a rozsahu, který byl vytvořen. Hodnota data a času (nebo maximální hodnoty rozsahu vytvořeného z několika existujících rozsahů) se používá k vyhodnocení zásad ukládání do mezipaměti.
Poznámka:
Hodnotu data a času příjmu dat můžete zadat pomocí vlastnosti creationTime
ingestování .
Při tom se ujistěte, že Lookback
je vlastnost v efektivní zásadě sloučení rozsahů tabulky zarovnaná s hodnotami, pro creationTime
které jste nastavili .
Ve výchozím nastavení je null
efektivní zásada , což znamená, že všechna data jsou považována za horká. Zásada null
na úrovni tabulky znamená, že zásada je zděděná z databáze. null
Zásada na úrovni tabulky přepisuje zásady na úrovni databáze.
Otázky týkající se horké mezipaměti
Při spouštění dotazů můžete rozsah omezit jenom na data v horké mezipaměti.
Poznámka:
Rozsah dat se vztahuje pouze na entity, které podporují zásady ukládání do mezipaměti, jako jsou tabulky a materializovaná zobrazení. U jiných entit, jako jsou externí tabulky a data v úložišti řádků, se ignoruje.
Existuje několik možností dotazu:
- Přidejte do dotazu vlastnost žádosti klienta.
query_datascope
Možné hodnoty:default
,all
ahotcache
. set
Použijte příkaz v textu dotazu:set query_datascope='...'
. Možné hodnoty jsou stejné jako u vlastnosti požadavku klienta.datascope=...
Přidejte text bezprostředně za odkaz na tabulku v textu dotazu. Možné hodnoty jsouall
ahotcache
.
Hodnota default
označuje použití výchozího nastavení, které určuje, že dotaz by měl pokrýt všechna data.
Pokud dojde k nesrovnalostem mezi různými metodami, set
má přednost před vlastností požadavku klienta. Určení hodnoty pro odkaz na tabulku má přednost před oběma.
Například v následujícím dotazu všechny odkazy na tabulky používají pouze data horké mezipaměti s výjimkou druhého odkazu na "T", který je vymezen na všechna data:
set query_datascope="hotcache";
T | union U | join (T datascope=all | where Timestamp < ago(365d)) on X
Zásady ukládání do mezipaměti vs. zásady uchovávání informací
Zásady ukládání do mezipaměti jsou nezávislé na zásadách uchovávání informací:
- Zásady ukládání do mezipaměti definují, jak určit prioritu prostředků. Dotazy na důležitá data jsou rychlejší.
- Zásady uchovávání informací definují rozsah dotazovatelných dat v tabulce nebo databázi (konkrétně
SoftDeletePeriod
).
Nakonfigurujte tuto zásadu, abyste dosáhli optimální rovnováhy mezi náklady a výkonem na základě očekávaného vzoru dotazu.
Příklad:
SoftDeletePeriod
= 56dhot cache policy
= 28d
V tomto příkladu se data za posledních 28 dnů ukládají na SSD a další 28 dnů dat se ukládají do úložiště objektů blob v Azure. Dotazy můžete spouštět na plných 56 dnech dat.