Travaux de copie de conteneur dans Azure Cosmos DB (préversion)

S’APPLIQUE À : NoSQL MongoDB Cassandra

Il est possible d’effectuer une copie de conteneur hors connexion au sein d’un compte Azure Cosmos DB à l’aide de travaux de copie de conteneur.

Vous devrez peut-être copier des données dans votre compte Azure Cosmos DB si vous souhaitez mettre en place l’un des scénarios suivants :

Les travaux de copie de conteneur peuvent être créés et gérés à l’aide de commandes Azure CLI.

Prise en main

Pour commencer, inscrivez-vous à la fonctionnalité d’évaluation appropriée dans le Portail Azure.

Copie de conteneur sur des comptes Azure Cosmos DB

API NoSQL

Pour commencer à utiliser la copie de conteneur hors connexion inter-comptes pour les comptes d’API Azure Cosmos DB for NoSQL, inscrivez-vous à la copie de conteneur hors connexion inter-comptes (NoSQL) indicateur de fonctionnalité d’évaluation dans fonctionnalités d’évaluation dans le portail Azure. Une fois l’inscription terminée, la préversion est effective pour tous les comptes d’API NoSQL de l’abonnement.

Copie de conteneur dans un compte Azure Cosmos DB

API NoSQL et Cassandra

Pour commencer à utiliser la copie de conteneur hors connexion intra-compte pour les comptes d’API NoSQL et Cassandra, inscrivez-vous à l’indicateur de fonctionnalité d’évaluation de la Copie de conteneur hors connexion intra-compte (Cassandra et NoSQL) dans Fonctionnalités d’évaluation dans le portail Azure. Lorsque l’inscription terminée, la préversion est effective pour tous les comptes d’API Cassandra et l’API pour NoSQL dans l’abonnement.

API pour MongoDB

Pour commencer à utiliser la copie de conteneur hors connexion intra-compte pour les comptes Azure Cosmos DB for MongoDB, inscrivez-vous à l’indicateur de fonctionnalité de préversion de la copie de collection hors connexion intra-compte (MongoDB) dans « Fonctionnalités d’évaluation » dans le Portail Azure. Une fois l’inscription terminée, la préversion est effective pour tous les comptes d’API pour MongoDB dans l’abonnement.

Copier les données d’un conteneur

  1. Créez le conteneur Azure Cosmos DB cible à l’aide des paramètres que vous souhaitez utiliser (clé de partition, granularité du débit, unités de requête, clé unique, etc.).
  2. Arrêtez les opérations sur le conteneur source en suspendant les instances d’application ou les clients qui s’y connectent.
  3. Créez le travail de copie de conteneur.
  4. Suivez la progression du travail de copie de conteneur et attendez qu’il soit terminé.
  5. Reprenez les opérations en pointant correctement l’application ou le client vers la copie de conteneur source ou cible.

Comment la copie de conteneur fonctionne-t-elle ?

Les travaux de copie de conteneur effectuent une copie de données hors connexion à l’aide du journal de flux de modification incrémentiel du conteneur source.

  1. La plateforme alloue des instances de calcul côté serveur pour le compte Azure Cosmos DB de destination.
  2. Les instances sont allouées quand un ou plusieurs travaux de copie de conteneur sont créés dans le compte.
  3. Les travaux de copie de conteneur s’exécutent sur ces instances.
  4. Un travail unique est exécuté dans toutes les instances à tout moment.
  5. Les instances sont partagées par tous les travaux de copie de conteneur qui s’exécutent dans le même compte.
  6. La plateforme peut libérer les instances si elles sont inactives pendant plus de 15 minutes.

Notes

Actuellement, nous ne prenons en charge que les travaux de copie de conteneurs hors connexion. Nous vous recommandons vivement d’arrêter d’effectuer toute opération sur le conteneur source avant de commencer la copie de conteneur. Les suppressions et les mises à jour d’éléments qui sont effectuées sur le conteneur source après le début du travail de copie risquent de ne pas être capturées. Si vous continuez à effectuer des opérations sur le conteneur source pendant que le travail sur le conteneur est en cours, vous risquez d’avoir des données dupliquées ou manquantes sur le conteneur cible.

Facteurs qui affectent la vitesse du travail de copie de conteneur

Le taux de progression du travail de copie de conteneur est déterminé par les facteurs suivants :

  • Le paramètre de débit du conteneur ou de la base de données source.

  • Le paramètre de débit du conteneur ou de la base de données cible.

    Conseil

    Définissez le débit du conteneur cible sur au moins deux fois le débit du conteneur source.

  • Instances de calcul côté serveur qui sont allouées au compte Azure Cosmos DB pour effectuer le transfert de données.

    Important

    La référence SKU par défaut offre deux instances côté serveur de 16 Go, comportant quatre processeurs virtuels par compte.

Limites

Critères d’éligibilité à la préversion

Les travaux de copie de conteneur ne fonctionnent pas avec les comptes dont les fonctionnalités suivantes sont activées. Désactivez ces fonctionnalités avant d’exécuter des travaux de copie de conteneur :

Configurations de compte

Le paramètre Durée de vie (TTL) n’est pas ajusté dans le conteneur de destination. Par conséquent, si un document n’a pas expiré dans le conteneur source, il démarre à nouveau son compte à rebours dans le conteneur de destination.

FAQ

Existe-t-il un contrat de niveau de service pour les travaux de copie de conteneur ?

Les travaux de copie de conteneur sont actuellement pris en charge dans la mesure du possible. Nous ne fournissons aucune garantie de contrat de niveau de service (SLA) concernant le temps nécessaire à l’achèvement des travaux.

Puis-je créer plusieurs travaux de copie de conteneur dans un compte ?

Oui, vous pouvez créer plusieurs travaux dans le même compte. Les travaux s’exécutent consécutivement. Vous pouvez afficher la liste de tous les travaux qui sont créés au sein d’un compte et en suivre la progression.

Puis-je copier l’intégralité d’une base de données dans le compte Azure Cosmos DB ?

Vous devez créer un travail pour chaque conteneur de la base de données.

Je dispose d’un compte Azure Cosmos DB couvrant plusieurs régions. Dans quelle région le travail de copie de conteneur s’exécute-t-il ?

Le travail de copie de conteneur s’exécute dans la région d’écriture. Dans un compte configuré avec des écritures multi-régionales, le travail s’exécute dans l’une des régions de la liste des régions d’écriture.

Que se passe-t-il pour les travaux de copie de conteneur lorsque la région d’écriture du compte change ?

La région d’écriture du compte peut changer dans le cas rare d’une panne de région ou en raison d’un basculement manuel. Dans ce scénario, les travaux de copie de conteneur incomplets qui ont été créés dans le compte échouent. Vous devrez recréer ces travaux ayant échoué. Les travaux recréés s’exécutent ensuite dans la nouvelle région d’écriture (actuelle).

Régions prises en charge

La copie de conteneur est actuellement prise en charge dans les régions suivantes :

Amérique Europe et Afrique Asie-Pacifique
Brésil Sud France Centre Centre de l’Australie
Centre du Canada France Sud Centre de l’Australie 2
Est du Canada Allemagne Nord Australie Est
USA Centre Allemagne Centre-Ouest Inde centrale
EUAP USA Centre Europe Nord Japon Est
USA Est Norvège Est Centre de la Corée
USA Est 2 Norvège Ouest Asie Sud-Est
USA Est 2 (EUAP) Suisse Nord Émirats arabes unis Centre
Centre-Nord des États-Unis Suisse Ouest Inde Ouest
États-Unis - partie centrale méridionale Sud du Royaume-Uni Asie Est
Centre-USA Ouest Ouest du Royaume-Uni Malaisie Sud
USA Ouest Europe Ouest OuJapon Est
USA Ouest 2 Israël Central Sud-Australie Est
Non pris en charge Afrique du Sud Nord Non pris en charge

Problèmes connus et courants

  • Erreur : la ressource de propriétaire n’existe pas.

    Si la création du travail échoue et affiche l’erreur La ressource propriétaire n’existe pas (code d’erreur 404), soit le conteneur cible n’a pas encore été créé, soit le nom du conteneur utilisé pour créer le travail ne correspond pas à un nom de conteneur réel.

    Assurez-vous que le conteneur cible est créé avant d’exécuter le travail, comme spécifié dans la vue d’ensemble, et assurez-vous que le nom du conteneur dans le travail correspond à un nom de conteneur réel.

    "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\"]
    
  • Erreur - La requête n’est pas autorisée.

    Si la requête échoue et affiche l’erreur Non autorisé (code d’erreur 401), l’autorisation locale peut être désactivée. Découvrez comment activer l’autorisation locale.

    Les travaux de copie de conteneur utilisent des clés primaires pour s’authentifier. Si l’autorisation locale est désactivée, la création du travail échoue. L’autorisation locale doit être activée pour que les travaux de copie de conteneur fonctionnent.

    "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."
    
  • Erreur : Erreur lors de l’obtention de ressources pour le travail.

    Cette erreur peut se produire en raison de problèmes internes au serveur. Pour résoudre ce problème, contactez le Support Microsoft en ouvrant une Nouvelle demande de support dans le portail Azure. Pour Type de problème, sélectionnez Migration des données. Pour Sous-type de problème, sélectionnez Copie de conteneur intra-compte.

    "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
    

Étapes suivantes