Nejnovější obnovitelné časové razítko pro účty Azure Cosmos DB s režimem průběžného zálohování

PLATÍ PRO: NoSQL MongoDB Gremlin Tabulka

Azure Cosmos DB nabízí rozhraní API pro získání nejnovějšího obnovitelného časového razítka kontejneru. Toto rozhraní API je k dispozici pro účty s povoleným režimem průběžného zálohování. Nejnovější obnovitelné časové razítko představuje nejnovější časové razítko ve formátu UTC, do kterého se vaše data úspěšně zálohovala. Pomocí tohoto rozhraní API můžete získat obnovovatelné časové razítko pro aktivaci obnovení živého účtu nebo monitorování, že se vaše data zálohují včas.

Toto rozhraní API také vezme umístění účtu jako vstupní parametr a vrátí nejnovější obnovitelné časové razítko pro daný kontejner v tomto umístění. Pokud účet existuje ve více umístěních, může se lišit nejnovější obnovovatelné časové razítko kontejneru v různých umístěních, protože zálohy v jednotlivých umístěních se provádějí nezávisle.

Ve výchozím nastavení toto rozhraní API funguje jenom na úrovni kontejneru, ale dá se snadno rozšířit tak, aby fungovalo na úrovni databáze nebo účtu. Tento článek vám pomůže pochopit sémantiku rozhraní API, způsob výpočtu a případy použití. Další informace najdete v tématu získání nejnovějšího časového razítka obnovení pro účty API pro NoSQL, MongoDB, Table a Gremlin.

Případy použití

Nejnovější obnovitelné časové razítko můžete použít v následujících případech použití:

  • Můžete získat nejnovější obnovitelné časové razítko kontejneru, databáze nebo účtu a použít ho k aktivaci obnovení. Toto časové razítko představuje data zadaného prostředku nebo všech jeho podkladových prostředků, které byly úspěšně zálohovány.

  • Toto rozhraní API můžete použít k identifikaci úspěšného zálohování dat před odstraněním účtu. Pokud je časové razítko vrácené tímto rozhraním API menší než časové razítko posledního zápisu, znamená to, že se ještě nezálohovala nějaká data. V takovém případě musíte toto rozhraní API volat, dokud se časové razítko nerovná nebo větší než poslední časové razítko zápisu. Pokud účet existuje ve více umístěních, musíte před odstraněním účtu získat nejnovější obnovitelné časové razítko ve všech umístěních, abyste měli jistotu, že se data zálohovala ve všech oblastech.

  • Pomocí tohoto rozhraní API můžete monitorovat, že se vaše data zálohují včas. Toto časové razítko je obvykle během několika stovek sekund aktuálního časového razítka, i když se někdy může lišit o více.

Sémantika

Nejnovější obnovitelné časové razítko kontejneru je minimální časové razítko, které se vytvořilo zálohování všech oddílů v umístění. Toto rozhraní API vypočítá nejnovější obnovovatelné časové razítko načtením nejnovějšího časového razítka zálohování pro každý oddíl kontejneru v umístění a vrátí minimální časové razítko všech těchto časových razítek. Pokud se data pro všechny oddíly zálohují a do těchto oddílů nebyly zapsána žádná nová data, vrátí maximální aktuální časové razítko a časové razítko poslední zálohy dat.

Pokud oddíl ještě nevytáhl žádnou zálohu, ale má nějaká data, která se mají zálohovat, vrátí minimální časové razítko Unixu (epoch), které je 1. ledna 1970, půlnoc UTC (Coordinated Universal Time). V takových případech musí uživatel opakovat, dokud nedává časové razítko větší než časové razítko epochy.

Nejnovější obnovitelný výpočet časového razítka

Následující příklad popisuje očekávaný výsledek nejnovějšího obnovitelného rozhraní API časového razítka v různých scénářích. V každém scénáři probereme aktuální stav zálohování protokolů oddílu, čekající data, která se mají zálohovat a jak ovlivňují celkový výpočet nejnovějšího obnovitelného časového razítka pro kontejner.

Řekněme, že máme účet, který existuje ve dvou oblastech (USA – východ, USA – západ). Máme kontejner cont1, který má dva oddíly (Partition1,Partition2). Pokud odešleme požadavek na získání nejnovějšího obnovitelného časového razítka pro tento kontejner v časovém razítku t3, vypočítá se celkové nejnovější obnovovatelné časové razítko pro tento kontejner následujícím způsobem:

Případ 1: Data pro všechny oddíly se ještě nezazálohovala

Oblast USA – východ:

  • Oddíl 1: Čas posledního zálohování = t2, ale má několik dalších dat, která se mají zálohovat po t2.
  • Oddíl 2: Čas poslední zálohy = t3 a všechna jeho data se zálohuje.
  • Nejnovější obnovitelné časové razítko = min (t2, t3) = t2

Oblast USA – západ:

  • Oddíl 1: Čas posledního zálohování = t1, ale má několik dalších dat, která se mají zálohovat po t1.
  • Oddíl 2: Čas posledního zálohování = t2, ale má několik dalších dat, která se mají zálohovat po t2.
  • Nejnovější obnovitelné časové razítko = min (t1, t2) = t1
Případ 2: Data pro všechny oddíly se zálohují

Oblast USA – východ:

  • Oddíl 1: Čas posledního zálohování = t2 a všechna jeho data se zálohuje.
  • Oddíl 2: Čas poslední zálohy = t3 a všechna jeho data se zálohuje.
  • Nejnovější obnovitelné časové razítko = max (aktuální časové razítko, t2, t3)

Oblast USA – západ:

  • Oddíl 1: Čas posledního zálohování = t3 a všechna jeho data se zálohuje.
  • Oddíl 2: Čas poslední zálohy = t3 a všechna jeho data se zálohuje.
  • Nejnovější obnovitelné časové razítko = max (aktuální časové razítko, t3, t3)
Případ 3: Pokud ještě jeden nebo více oddílů nevykoná žádné zálohování

Oblast USA – východ:

  • Oddíl 1: Pro tento oddíl ještě nebyla provedena žádná záloha protokolu.
  • Oddíl 2: Čas posledního zálohování = t3
  • Nejnovější obnovitelné časové razítko = 1. 1. 1970 12:00:00

Nejčastější dotazy

Můžu toto rozhraní API použít pro účty s pravidelným zálohováním?

Ne. Toto rozhraní API lze použít pouze pro účty s režimem průběžného zálohování.

Můžu toto rozhraní API použít pro účty migrované do průběžného režimu?

Ano. Toto rozhraní API se dá použít pro účet zřízený pomocí režimu průběžného zálohování nebo úspěšně migrovaný do režimu průběžného zálohování.

Jaká je typická prodleva mezi posledním časovým razítkem zápisu a nejnovějším obnovovatelným časovým razítkem?

Zálohovaná data protokolu se zálohuje každých 100 sekund. V některých výjimečných případech ale zálohování může být zpožděné déle než 100 sekund.

Bude obnovitelné časové razítko fungovat pro odstraněné prostředky?

Ne. Vztahuje se pouze na živé prostředky (databáze, kolekce nebo účet). Můžete získat obnovitelné časové razítko pro aktivaci obnovení živého účtu nebo monitorování, že se vaše data zálohují včas.

Další kroky