Dela via


Senaste återställningsbara tidsstämpeln för Azure Cosmos DB-konton med kontinuerligt säkerhetskopieringsläge

GÄLLER FÖR: NoSQL MongoDB Gremlin Bord

Azure Cosmos DB erbjuder ett API för att hämta den senaste återställningsbara tidsstämpeln för en container. Det här API:et är tillgängligt för konton som har läget för kontinuerlig säkerhetskopiering aktiverat. Den senaste återställningsbara tidsstämpeln representerar den senaste tidsstämpeln i UTC-format som dina data har säkerhetskopierats till. Med det här API:et kan du hämta den återställningsbara tidsstämpeln för att utlösa återställningen av livekontot eller övervaka att dina data säkerhetskopieras i tid.

Det här API:et tar även kontoplatsen som en indataparameter och returnerar den senaste återställningsbara tidsstämpeln för den angivna containern på den här platsen. Om det finns ett konto på flera platser kan den senaste återställningsbara tidsstämpeln för en container på olika platser vara annorlunda eftersom säkerhetskopiorna på varje plats tas oberoende av varandra.

Som standard fungerar det här API:et bara på containernivå, men det kan enkelt utökas till att fungera på databas- eller kontonivå. Den här artikeln hjälper dig att förstå semantiken för API, hur det beräknas och användningsfall för det. Mer information finns i hur du hämtar den senaste återställningstidsstämpeln för API för NoSQL-, MongoDB-, Table- och Gremlin-konton.

Användningsfall

Du kan använda den senaste återställningsbara tidsstämpeln i följande användningsfall:

  • Du kan hämta den senaste återställningsbara tidsstämpeln för en container, databas eller ett konto och använda den för att utlösa återställningen. Den här tidsstämpeln representerar data för den angivna resursen eller alla dess underliggande resurser har säkerhetskopierats.

  • Du kan använda det här API:et för att identifiera att dina data har säkerhetskopierats innan du tar bort kontot. Om tidsstämpeln som returneras av det här API:et är mindre än den senaste tidsstämpeln för skrivning innebär det att det finns vissa data som inte har säkerhetskopierats ännu. I sådana fall måste du anropa det här API:et tills tidsstämpeln blir lika med eller större än den senaste tidsstämpeln för skrivning. Om det finns ett konto på flera platser måste du hämta den senaste återställningsbara tidsstämpeln på alla platser för att se till att data säkerhetskopierades i alla regioner innan du tar bort kontot.

  • Du kan använda det här API:et för att övervaka att dina data säkerhetskopieras i tid. Denna tidsstämpel är vanligtvis inom några hundra sekunder från den aktuella tidsstämpeln, även om den ibland kan skilja sig med mer.

Semantik

Den senaste återställningsbara tidsstämpeln för en container är den minsta tidsstämpeln upp till, som säkerhetskopiering av alla dess partitioner på en plats har tagits. Det här API:et beräknar den senaste återställningsbara tidsstämpeln genom att hämta den senaste tidsstämpeln för säkerhetskopiering för varje partition av containern på en plats och returnerar den minsta tidsstämpeln för alla dessa tidsstämplar. Om data för alla dess partitioner säkerhetskopieras och inga nya data skrevs till dessa partitioner returneras maximalt för aktuell tidsstämpel och den senaste tidsstämpeln för datasäkerhetskopiering.

Om en partition inte har tagit någon säkerhetskopia ännu, men den har vissa data som ska säkerhetskopieras, returneras den minsta Tidsstämpel för Unix (epok) som är, 1 januari 1970, midnatt UTC (Coordinated Universal Time). I sådana fall måste användaren försöka igen tills den ger en tidsstämpel som är större än epoktidsstämpeln.

Senaste återställningsbara tidsstämpelberäkning

I följande exempel beskrivs det förväntade resultatet av det senaste återställningsbara tidsstämpel-API:et i olika scenarier. I varje scenario diskuterar vi det aktuella tillståndet för loggsäkerhetskopiering av partition, väntande data som ska säkerhetskopieras och hur det påverkar den övergripande senaste återställningsbara tidsstämpelberäkningen för en container.

Anta att vi har ett konto som finns i två regioner (USA, östra, USA, västra). Vi har en container "cont1", som har två partitioner (Partition1, Partition2). Om vi skickar en begäran om att få den senaste återställningsbara tidsstämpeln för den här containern vid tidsstämpeln "t3" beräknas den senaste återställningsbara tidsstämpeln för den här containern på följande sätt:

Ärende 1: Data för alla partitioner har inte säkerhetskopierats än

Region USA, östra:

  • Partition 1: Senaste säkerhetskopieringstid = t2, men det finns lite mer data som ska säkerhetskopieras efter t2.
  • Partition 2: Senaste säkerhetskopieringstid = t3 och alla dess data säkerhetskopieras.
  • Senaste återställningsbara tidsstämpel = min (t2, t3) = t2

Region usa, västra:

  • Partition 1: Senaste säkerhetskopieringstid = t1, men det finns lite mer data som ska säkerhetskopieras efter t1.
  • Partition 2: Senaste säkerhetskopieringstid = t2, men det finns lite mer data som ska säkerhetskopieras efter t2.
  • Senaste återställningsbara tidsstämpel = min (t1, t2) = t1
Case2: Data för alla partitioner säkerhetskopieras

Region USA, östra:

  • Partition 1: Senaste säkerhetskopieringstid = t2 och alla dess data säkerhetskopieras.
  • Partition 2: Senaste säkerhetskopieringstid = t3 och alla dess data säkerhetskopieras.
  • Senaste återställningsbara tidsstämpel = max (aktuell tidsstämpel, t2, t3)

Region usa, västra:

  • Partition 1: Senaste säkerhetskopieringstid = t3 och alla dess data säkerhetskopieras.
  • Partition 2: Senaste säkerhetskopieringstid = t3 och alla dess data säkerhetskopieras.
  • Senaste återställningsbara tidsstämpel = max (aktuell tidsstämpel, t3, t3)
Fall 3: När en eller flera partitioner inte har tagit någon säkerhetskopia än

Region USA, östra:

  • Partition 1: Ingen loggsäkerhetskopia har gjorts för den här partitionen ännu.
  • Partition 2: Senaste säkerhetskopieringstid = t3
  • Senaste återställningsbara tidsstämpel = 1/1/1970 12:00:00

Vanliga frågor och svar

Kan jag använda det här API:et för konton med regelbunden säkerhetskopiering?

Nej. Det här API:et kan endast användas för konton med kontinuerligt säkerhetskopieringsläge.

Kan jag använda det här API:et för konton som migrerats till kontinuerligt läge?

Ja. Det här API:et kan användas för konto som etablerats med läget för kontinuerlig säkerhetskopiering eller migreras till läget för kontinuerlig säkerhetskopiering.

Vilken är den typiska fördröjningen mellan den senaste skrivtidsstämpeln och den senaste återställningsbara tidsstämpeln?

Loggsäkerhetskopieringsdata säkerhetskopieras var 100:e sekund. I vissa undantagsfall kan säkerhetskopieringar dock fördröjas i mer än 100 sekunder.

Kommer återställningsbar tidsstämpel att fungera för borttagna resurser?

Nej. Den gäller endast för liveresurser (databaser, samlingar eller konton). Du kan hämta den återställningsbara tidsstämpeln för att utlösa återställningen av livekontot eller övervaka att dina data säkerhetskopieras i tid.

Nästa steg