Hodnota TTL (Time to Live) ve službě Azure Cosmos DB
PLATÍ PRO: NoSQL
Služba Time to Live nebo TTL odstraní položky z kontejneru automaticky po určitém časovém období. Ve výchozím nastavení můžete nastavit, aby se doba života na úrovni kontejneru přepsala na základě jednotlivých položek. Po nastavení hodnoty TTL v kontejneru nebo na úrovni položky služba Azure Cosmos DB tyto položky automaticky odebere po uplynutí časového období od doby, kdy byly naposledy změněny. Hodnota Time to Live je nakonfigurovaná v sekundách. Když nakonfigurujete hodnotu TTL, systém automaticky odstraní položky s vypršenou platností na základě hodnoty TTL, aniž by potřeboval operaci odstranění explicitně vystavenou klientskou aplikací. Maximální hodnota hodnoty TTL je 2 147 483 647 sekund, což je přibližný ekvivalent 24 855 dnů nebo 68 let.
Položky s vypršenou platností se odstraní jako úloha na pozadí. Položka se už nebude zobrazovat v odpovědích na dotazy hned po vypršení platnosti hodnoty TTL, i když ještě nebyla trvale odstraněna z kontejneru. Pokud kontejner nemá dostatek jednotek žádostí (RU) k provedení odstranění, odstranění dat se zpozdí. Data budou odstraněna, jakmile budou k dispozici dostatečné jednotky RU pro dokončení odstranění.
U zřízených účtů propustnosti používá odstranění položek s vypršenou platností zbývající jednotky RU, které uživatelské požadavky nespotřebovaly.
U bezserverových účtů se odstranění položek s vypršenou platností účtuje v rukách se stejnou rychlostí jako operace odstranění položek.
Poznámka:
Tento obsah souvisí s transakčním úložištěm TTL služby Azure Cosmos DB. Pokud hledáte hodnotu TTL analytického úložiště, která umožňuje scénáře NoETL HTAP prostřednictvím služby Azure Synapse Link, klikněte sem.
Doba života pro kontejnery a položky
Hodnota time to live je nastavena v sekundách a interpretuje se jako rozdíl od času poslední změny položky. V kontejneru nebo v rámci kontejneru můžete nastavit dobu, kdy se má v kontejneru žít:
Time to Live on a container (set using
DefaultTimeToLive
):Pokud chybí (nebo je nastavená hodnota null), nevypršela platnost položek automaticky.
Pokud je hodnota přítomná a hodnota je nastavená na hodnotu -1, rovná se nekonečnu a ve výchozím nastavení nevyprší platnost položek.
Pokud existuje hodnota a hodnota je nastavena na některé nenulové číslo "n", položky vyprší "n" sekund po jejich čase poslední změny.
Time to Live on an item (set using
ttl
):Tato vlastnost se vztahuje pouze v případě
DefaultTimeToLive
, že je k dispozici a není nastavena na hodnotu null pro nadřazený kontejner.Pokud je k dispozici, přepisuje hodnotu
DefaultTimeToLive
nadřazeného kontejneru.
Konfigurace Time to Live
Pokud je hodnota TTL v kontejneru nastavená na n , vyprší platnost položek v daném kontejneru po n sekundách. Pokud jsou ve stejném kontejneru položky, které mají svůj vlastní čas naživo, nastavte na hodnotu -1 (což znamená, že nevyprší jejich platnost). Pokud některé položky přepíší nastavení času naživo jiným číslem, vyprší platnost těchto položek na základě jejich vlastní nakonfigurované hodnoty TTL.
Pokud hodnota TTL není nastavená na kontejner, nemá čas na aktivní položku v tomto kontejneru žádný vliv.
Pokud je hodnota TTL v kontejneru nastavená na hodnotu -1, vyprší platnost položky v tomto kontejneru, která má nastavený čas na hodnotu n, po n sekundách a zbývající položky nevyprší.
Příklady
Tato část ukazuje některé příklady s různými hodnotami času naživo přiřazené kontejneru a položkám:
Poznámka:
Nastavení hodnoty TTL na hodnotu null u položky není podporováno. Hodnota TTL položky musí být nenulové kladné celé číslo menší nebo rovno 2147483647 nebo -1, což znamená, že položka nikdy nevyprší. Pokud chcete pro položku použít výchozí hodnotu TTL, ujistěte se, že vlastnost TTL není k dispozici.
Příklad 1
Hodnota TTL v kontejneru je nastavená na hodnotu null (DefaultTimeToLive = null).
Hodnota TTL u položky | Výsledek |
---|---|
Chybějící vlastnost ttl | Hodnota TTL je zakázaná. Položka nikdy nevyprší (výchozí). |
ttl = -1 | Hodnota TTL je zakázaná. Položka nikdy nevyprší. |
ttl = 2000 | Hodnota TTL je zakázaná. Položka nikdy nevyprší. |
Příklad 2
Hodnota TTL v kontejneru je nastavená na -1 (DefaultTimeToLive = -1)
Hodnota TTL u položky | Výsledek |
---|---|
Chybějící vlastnost ttl | Je povolená hodnota TTL. Položka nikdy nevyprší (výchozí). |
ttl = -1 | Je povolená hodnota TTL. Položka nikdy nevyprší. |
ttl = 2000 | Je povolená hodnota TTL. Položka vyprší po 2 000 sekundách. |
Příklad 3
Hodnota TTL v kontejneru je nastavená na 1000 (DefaultTimeToLive = 1000)
Hodnota TTL u položky | Výsledek |
---|---|
Chybějící vlastnost ttl | Je povolená hodnota TTL. Položka vyprší po 1 000 sekundách (výchozí). |
ttl = -1 | Je povolená hodnota TTL. Položka nikdy nevyprší. |
ttl = 2000 | Je povolená hodnota TTL. Položka vyprší po 2 000 sekundách. |
Další kroky
Informace o konfiguraci funkce Time to Live najdete v následujících článcích: