Taken voor containerkopieën in Azure Cosmos DB (preview)
VAN TOEPASSING OP: NoSQL MongoDB Cassandra
U kunt offline containers kopiëren binnen een Azure Cosmos DB-account met behulp van containerkopieertaken.
Mogelijk moet u gegevens in uw Azure Cosmos DB-account kopiëren als u een van deze scenario's wilt uitvoeren:
- Alle items van de ene container naar de andere kopiëren.
- Wijzig de granulariteit waarmee de doorvoer wordt ingericht, van database naar container en omgekeerd.
- De partitiesleutel van een container wijzigen.
- De unieke sleutels voor een container bijwerken.
- Wijzig de naam van een container of database.
- Wijzig de capaciteitsmodus van een account van serverloos in ingericht of omgekeerd.
- Nieuwe functies gebruiken die alleen worden ondersteund voor nieuwe containers, bijvoorbeeld hiërarchische partitiesleutels.
Taken voor containerkopieën kunnen worden gemaakt en beheerd met behulp van Azure CLI-opdrachten.
Aan de slag
Registreer u voor de relevante preview-functie in Azure Portal om aan de slag te gaan.
Container kopiëren tussen Azure Cosmos DB-accounts
NoSQL-API
Als u aan de slag wilt gaan met offline containerkopie tussen accounts voor accounts voor offlinecontainers van Azure Cosmos DB for NoSQL, moet u zich registreren voor de preview-functievlag voor offlinecontainerkopieën (NoSQL) voor meerdere accounts in preview-functies in Azure Portal. Zodra de registratie is voltooid, is de preview van kracht voor alle NoSQL-API-accounts in het abonnement.
Container kopiëren binnen een Azure Cosmos DB-account
NoSQL- en Cassandra-API
Als u aan de slag wilt gaan met offline containerkopie binnen het account voor NoSQL- en Cassandra-API-accounts, moet u zich registreren voor de preview-functievlag Cassandra & NoSQL (Cassandra & NoSQL) in preview-functies in Azure Portal. Wanneer de registratie is voltooid, is de preview van kracht voor alle Cassandra- en API voor NoSQL-accounts in het abonnement.
API voor MongoDB
Als u aan de slag wilt gaan met offline containerkopie binnen het account voor offlinecontainerkopie voor Azure Cosmos DB voor MongoDB-accounts, registreert u zich voor de preview-functievlag voor offlineverzamelingen (MongoDB) in preview-functies in Azure Portal. Zodra de registratie is voltooid, is de preview van kracht voor alle API voor MongoDB-accounts in het abonnement.
De gegevens van een container kopiëren
- Maak de Azure Cosmos DB-doelcontainer met behulp van de instellingen die u wilt gebruiken (partitiesleutel, doorvoergranulariteit, aanvraageenheden, unieke sleutel, enzovoort).
- Stop de bewerkingen in de broncontainer door de toepassingsexemplaren of clients te onderbreken die er verbinding mee maken.
- Maak de containerkopietaak.
- Controleer de voortgang van de containerkopietaak en wacht totdat deze is voltooid.
- Hervat de bewerkingen door de toepassing of client naar de bron- of doelcontainerkopie te laten verwijzen zoals bedoeld.
Hoe werkt het kopiëren van containers?
Containerkopieertaken voeren offline gegevenskopie uit met behulp van het incrementele wijzigingenfeedlogboek van de broncontainer.
- Het platform wijst rekenprocessen aan de serverzijde toe voor het Azure Cosmos DB-doelaccount.
- Deze exemplaren worden toegewezen wanneer een of meer containerkopietaken in het account worden gemaakt.
- De taken voor het kopiëren van containers worden uitgevoerd op deze exemplaren.
- Eén taak wordt op elk gewenst moment uitgevoerd voor alle exemplaren.
- De exemplaren worden gedeeld door alle containerkopietaken die in hetzelfde account worden uitgevoerd.
- Het platform kan de toewijzing van de exemplaren ongedaan maken als ze langer dan 15 minuten inactief zijn.
Notitie
Momenteel ondersteunen we alleen offline taken voor het kopiëren van containers. We raden u ten zeerste aan om te stoppen met het uitvoeren van bewerkingen in de broncontainer voordat u begint met het kopiëren van de container. Itemverwijderingen en updates die worden uitgevoerd op de broncontainer nadat u de kopieertaak hebt gestart, worden mogelijk niet vastgelegd. Als u bewerkingen op de broncontainer blijft uitvoeren terwijl de containertaak wordt uitgevoerd, hebt u mogelijk dubbele of ontbrekende gegevens in de doelcontainer.
Factoren die van invloed zijn op de snelheid van een containerkopietaak
De snelheid van de voortgang van de containerkopietaak wordt bepaald door deze factoren:
De instelling voor de doorvoer van de broncontainer of database.
De doelcontainer of databasedoorvoerinstelling.
Tip
Stel de doorvoer van de doelcontainer in op ten minste twee keer de doorvoer van de broncontainer.
Rekeninstanties aan de serverzijde die zijn toegewezen aan het Azure Cosmos DB-account voor het uitvoeren van de gegevensoverdracht.
Belangrijk
De standaard-SKU biedt twee exemplaren aan de serverzijde van 4 vCPU's van 16 GB per account.
Beperkingen
Criteria voor geschiktheid voor preview
Taken voor containerkopieën werken niet met accounts waarvoor de volgende mogelijkheden zijn ingeschakeld. Schakel deze functies uit voordat u containerkopietaken uitvoert:
Accountconfiguraties
De TTL-instelling (Time to Live) wordt niet aangepast in de doelcontainer. Als een document hierdoor niet is verlopen in de broncontainer, wordt het aftellen opnieuw gestart in de doelcontainer.
Veelgestelde vragen
Is er een service level agreement voor containerkopieertaken?
Taken voor het kopiëren van containers worden momenteel op basis van best effort ondersteund. We bieden geen SLA-garanties (Service Level Agreement) voor de tijd die nodig is om de taken te voltooien.
Kan ik meerdere taken voor het kopiëren van containers binnen een account maken?
Ja, u kunt meerdere taken binnen hetzelfde account maken. De taken worden opeenvolgend uitgevoerd. U kunt alle taken weergeven die in een account zijn gemaakt en de voortgang ervan controleren.
Kan ik een volledige database kopiëren binnen het Azure Cosmos DB-account?
U moet een taak maken voor elke container in de database.
Ik heb een Azure Cosmos DB-account met meerdere regio's. In welke regio wordt de containerkopietaak uitgevoerd?
De containerkopietaak wordt uitgevoerd in de schrijfregio. In een account dat is geconfigureerd met schrijfbewerkingen in meerdere regio's, wordt de taak uitgevoerd in een van de regio's in de lijst met schrijfregio's.
Wat gebeurt er met de containerkopietaken wanneer de schrijfregio van het account wordt gewijzigd?
De schrijfregio van het account kan veranderen in het zeldzame scenario van een regiostoring of vanwege handmatige failover. In dit scenario mislukken onvolledige taken voor het kopiëren van containers die in het account zijn gemaakt. U moet deze mislukte taken opnieuw maken. Opnieuw gemaakte taken worden vervolgens uitgevoerd in de nieuwe (huidige) schrijfregio.
Ondersteunde regio’s
Op dit moment wordt containerkopie ondersteund in de volgende regio's:
Noord- en Zuid-Amerika | Europa en Afrika | Azië en Stille Oceaan |
---|---|---|
Brazilië - zuid | Frankrijk - centraal | Australië - centraal |
Canada - midden | Frankrijk - zuid | Australië - centraal 2 |
Canada - oost | Duitsland - noord | Australië - oost |
Central US | Duitsland - west-centraal | India - centraal |
VS - centraal EUAP | Europa - noord | Japan East |
VS - oost | Noorwegen - oost | Korea - centraal |
VS - oost 2 | Noorwegen - west | Azië - zuidoost |
VS - oost 2 EUAP | Zwitserland - noord | UAE - centraal |
VS - noord-centraal | Zwitserland - west | India - west |
VS - zuid-centraal | Verenigd Koninkrijk Zuid | Azië - oost |
VS - west-centraal | Verenigd Koninkrijk West | Maleisië - zuid |
VS - west | Europa -west | Japan - west |
VS - west 2 | Israël - centraal | Australië - zuidoost |
Niet ondersteund | Zuid-Afrika - noord | Niet ondersteund |
Bekende en veelvoorkomende problemen
Fout: de eigenaarresource bestaat niet.
Als het maken van de taak mislukt en de resource eigenaar van de fout niet bestaat (foutcode 404), is de doelcontainer nog niet gemaakt of komt de containernaam die wordt gebruikt voor het maken van de taak niet overeen met een werkelijke containernaam.
Zorg ervoor dat de doelcontainer is gemaakt voordat u de taak uitvoert zoals opgegeven in het overzicht en zorg ervoor dat de containernaam in de taak overeenkomt met een werkelijke containernaam.
"code": "404", "message": "Response status code does not indicate success: NotFound (404); Substatus: 1003; ActivityId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx; Reason: (Message: {\"Errors\":[\"Owner resource does not exist\"]
Fout: aanvraag is niet gemachtigd.
Als de aanvraag mislukt en de fout Niet geautoriseerd (foutcode 401) weergeeft, is lokale autorisatie mogelijk uitgeschakeld.
Containerkopieertaken maken gebruik van primaire sleutels voor verificatie. Als lokale autorisatie is uitgeschakeld, mislukt het maken van de taak. Lokale autorisatie moet zijn ingeschakeld om taken voor het kopiëren van containers te laten werken.
"code": "401", "message": " Response status code does not indicate success: Unauthorized (401); Substatus: 5202; ActivityId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx; Reason: Local Authorization is disabled. Use an AAD token to authorize all requests."
Fout: fout bij het verkrijgen van resources voor de taak.
Deze fout kan optreden vanwege interne serverproblemen. Neem contact op met Microsoft Ondersteuning door een nieuwe ondersteuningsaanvraag te openen in Azure Portal om dit probleem op te lossen. Selecteer gegevensmigratie voor probleemtype. Selecteer voor subtype Probleem de optie Containerkopie binnen het account.
"code": "500" "message": "Error while getting resources for job, StatusCode: 500, SubStatusCode: 0, OperationId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, ActivityId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Volgende stappen
- Meer informatie over het maken, bewaken en beheren van kopieertaken voor containers in een Azure Cosmos DB-account met behulp van CLI-opdrachten.