Migrer d’Azure Data Lake Storage Gen1 vers Azure Data Lake Storage Gen2 à l’aide du portail Azure

Cet article explique comment simplifier la migration à l’aide du portail Azure.

Remarque

Azure Data Lake Storage Gen1 est maintenant mis hors service. Consultez l’annonce de mise hors service ici. Les ressources Data Lake Storage Gen1 ne sont plus accessibles. Si vous avez besoin d’aide spéciale, contactez-nous.

Voici une vidéo qui vous en dit plus.

     Chapitres :


  • 00:37 : Introduction

  • 01:16 : préparation de la migration

  • 07:15 : Migration de copie de données

  • 17:40 : Copier ou terminer la migration

  • 19:43 : Migration complète

  • 33:15 : Post-migration

Avant de commencer, veillez à lire les instructions générales sur la migration de Gen1 vers Gen2 dans Azure Data Lake Storage recommandations et modèles de migration.

Votre compte peut ne pas être éligible à la migration basée sur le portail en raison de certaines contraintes. Lorsque le bouton Migrer des données n’est pas activé dans le portail Azure de votre compte Gen1, vous pouvez envoyer une demande de support si vous disposez d’un plan de support. Vous pouvez également poser vos questions aux experts de la communauté dans Microsoft Q&A.

Remarque

Pour faciliter la lecture de cet article, le terme Gen1 est utilisé pour faire référence à Azure Data Lake Storage Gen1 tandis que le terme Gen2 est utilisé pour faire référence à Azure Data Lake Storage Gen2.

Étape 1 : Créer un compte de stockage avec des fonctionnalités Gen2

Azure Data Lake Storage Gen2 n’est ni un compte de stockage dédié ni un type de service. Il s’agit d’un ensemble de fonctionnalités que vous pouvez obtenir en activant la fonctionnalité Espace de noms hiérarchique dans un compte de stockage Azure. Pour créer un compte comprenant des fonctionnalités Gen2, consultez Créer un compte de stockage à utiliser avec Data Lake Storage Gen2.

Lorsque vous créez le compte, veillez à configurer les paramètres avec les valeurs suivantes.

Paramètre Valeur
Nom du compte de stockage Nom de votre choix. Ce nom ne doit pas nécessairement correspondre à celui de votre compte Gen1, et peut se trouver dans l’abonnement de votre choix.
Lieu La même région que celle utilisée par le compte Data Lake Storage Gen1
Réplication LRS ou ZRS
Version TLS minimale 1.0
NFS v3 Désactivé
Espace de noms hiérarchique Activé

Notes

L’outil de migration du portail Azure ne déplace pas les paramètres de compte. Par conséquent, une fois que vous avez créé le compte, vous devez configurer manuellement les paramètres tels que le chiffrement, les pare-feu réseau ou la protection des données.

Important

Veillez à utiliser un compte de stockage nouvellement créé, sans historique d’utilisation. N’opérez pas de migration vers un compte précédemment utilisé, et n’utilisez pas un compte dans lequel des conteneurs ont été supprimés pour le vider.

Étape 2 : Vérifier les attributions de rôles de contrôle d’accès en fonction du rôle Azure (Azure RBAC)

Pour Gen2, vérifiez que le rôle Propriétaire des données Blob du stockage a été attribué à votre identité d’utilisateur Microsoft Entra dans l’étendue du compte de stockage, du groupe de ressources parent ou de l’abonnement.

Pour Gen1, vérifiez que le rôle Propriétaire a été attribué à votre identité Microsoft Entra dans l’étendue du compte Gen1, du groupe de ressources parent ou de l’abonnement.

Étape 3 : Migrer les charges de travail Azure Data Lake Analytics

Azure Data Lake Storage Gen2 ne prend pas en charge Azure Data Lake Analytics. Azure Data Lake Analytics sera mis hors service le 29 février 2024. Si vous essayez d’utiliser le portail Azure pour migrer un compte Azure Data Lake Storage Gen1 utilisé pour Azure Data Lake Analytics, il est possible que vous interrompiez vos charges de travail Azure Data Lake Analytics. Vous devez d’abord migrer vos charges de travail Azure Data Lake Analytics vers Azure Synapse Analytics ou une autre plateforme de calcul prise en charge avant de tenter de migrer votre compte Gen1.

Pour plus d’informations, consultez Gérer Azure Data Lake Analytics à l’aide du portail Azure.

Étape 4 : Préparer le compte Gen1

Les noms de fichiers ou de répertoires avec uniquement des espaces ou des tabulations, se terminant par un ., contenant un : ou comportant plusieurs barres obliques consécutives (//) ne sont pas compatibles avec Gen2. Vous devez renommer ces fichiers ou répertoires avant d’opérer la migration.

Pour de meilleures performances, envisagez de retarder la migration d’au moins dix jours à compter de la dernière opération de suppression. Dans un compte Gen1, les fichiers supprimés deviennent des fichiers supprimés réversibles qui ne sont supprimés définitivement par le récupérateur de mémoire qu’au bout de sept jours. Le processus de nettoyage prend ensuite quelques jours. Le temps nécessaire au nettoyage dépend du nombre de fichiers. Tous les fichiers, y compris les fichiers supprimés de manière réversible, sont traités pendant la migration. Votre temps d’attente peut s’améliorer si vous attendez que le récupérateur de mémoire élimine définitivement les fichiers supprimés.

Étape 5 : Effectuer la migration

Avant de commencer, passez en revue les deux options de migration ci-dessous et décidez de copier uniquement les données de Gen1 vers Gen2 (recommandé) ou d’effectuer une migration complète.

Option 1 : Copier les données uniquement (recommandé). Dans cette option, les données Gen1 sont copiées vers Gen2. À mesure que les données sont copiées, le compte Gen1 passe en lecture seule. Une fois les données copiées, les comptes Gen1 et Gen2 sont accessibles. Toutefois, vous devez mettre à jour les applications et les charges de travail de calcul pour utiliser le nouveau point de terminaison Gen2.

Option 2 : Effectuer une migration complète. Dans cette option, les données Gen1 sont copiées vers Gen2. Une fois les données copiées, tout le trafic du compte Gen1 sera redirigé vers le compte avec Gen2. Les requêtes redirigées utilisent la couche de compatibilité Gen1 pour traduire les appels d’API Gen1 en équivalents Gen2. Pendant la migration, le compte Gen1 passe en lecture seule. Une fois la migration terminée, le compte Gen1 est inaccessible.

Quelle que soit l’option que vous choisissez, une fois que vous avez migré et vérifié que toutes vos charges de travail fonctionnent comme prévu, vous pouvez supprimer le compte Gen1.

Option 1 : Copier les données de Gen1 vers Gen2

  1. Pour commencer, connectez-vous au portail Azure.

  2. Accédez à votre compte Data Lake Storage Gen1 et affichez la vue d’ensemble du compte.

  3. Sélectionnez le bouton Migrer les données.

    Screenshot of the button to migrate.

  4. Sélectionnez Copier les données vers un nouveau compte Gen2.

    Screenshot of the copy data option.

  5. Cochez la case pour accorder votre consentement à Microsoft pour effectuer la migration des données. Ensuite, sélectionnez le bouton Appliquer.

    Screenshot of the checkbox to provide consent.

    Une barre de progression s’affiche avec un message de sous-statut. Vous pouvez utiliser ces indicateurs pour évaluer la progression de la migration. Puisque le temps d’exécution de chaque tâche varie, la barre de progression n’avance pas à un rythme cohérent. Par exemple, la barre de progression peut rapidement passer à 50 %, mais prendre un peu plus de temps pour terminer les 50 % restants.

    Screenshot of progress bar when migrating data.

    Important

    Pendant la migration de vos données, votre compte Gen1 passe en lecture seule et votre compte Gen2 est désactivé. Une fois la migration terminée, vous pouvez lire et écrire des données dans les deux comptes.

    Vous pouvez interrompre la migration à tout moment en sélectionnant le bouton Arrêter la migration.

    Screenshot of the stop migration option.

Option 2 : Effectuer une migration complète

  1. Pour commencer, connectez-vous au portail Azure.

  2. Accédez à votre compte Data Lake Storage Gen1 et affichez la vue d’ensemble du compte.

  3. Sélectionnez le bouton Migrer les données.

    Screenshot of the migrate button.

  4. Sélectionnez Effectuer la migration vers un nouveau compte Gen2.

    Screenshot of the complete migration option.

  5. Cochez la case pour accorder votre consentement à Microsoft pour effectuer la migration des données. Ensuite, sélectionnez le bouton Appliquer.

    Screenshot of the consent checkbox.

    Une barre de progression s’affiche avec un message de sous-statut. Vous pouvez utiliser ces indicateurs pour évaluer la progression de la migration. Puisque le temps d’exécution de chaque tâche varie, la barre de progression n’avance pas à un rythme cohérent. Par exemple, la barre de progression peut rapidement passer à 50 %, mais prendre un peu plus de temps pour terminer les 50 % restants.

    Screenshot of progress bar when performing a complete migration.

    Important

    Pendant la migration de vos données, votre compte Gen1 passe en lecture seule et votre compte Gen2 est désactivé.

    Par ailleurs, pendant la redirection de l’URI Gen1, les deux comptes sont désactivés.

    Une fois la migration terminée, votre compte Gen1 est désactivé. Les données de votre compte Gen1 ne seront pas accessibles et seront supprimées après 30 jours. Votre compte Gen2 sera disponible pour les lectures et les écritures.

    Vous pouvez interrompre la migration à tout moment avant la redirection de l’URI, en sélectionnant le bouton Arrêter la migration.

    Screenshot of the migration stop button.

Étape 6 : Vérifier que la migration s’est terminée

Si la migration se termine avec succès, un conteneur nommé gen1 sera créé sur le compte avec Gen2, et toutes les données du compte Gen1 seront copiées dans ce nouveau conteneur gen1. Pour trouver les données sur un chemin qui existait sur Gen1, vous devez ajouter le préfixe gen1/ au même chemin pour y accéder sur Gen2. Par exemple, un chemin nommé « FolderRoot/FolderChild/FileName.csv » sur Gen1 sera disponible sur « gen1/FolderRoot/FolderChild/FileName.csv » sur Gen2. Les noms de conteneur ne peuvent pas être renommés sur Gen2, donc ce conteneur gen1 sur Gen2 ne peut pas être renommé après la migration. Toutefois, les données peuvent être copiées dans un nouveau conteneur dans Gen2 si nécessaire.

Si la migration ne se termine pas correctement, un message s’affiche indiquant que la migration est bloquée en raison d’incompatibilités. Si vous souhaitez obtenir de l’aide pour l’étape suivante, contactez Support Microsoft. Ce message peut s’afficher si le compte gen2 a été précédemment utilisé ou lorsque les fichiers et répertoires du compte Gen1 utilisent des conventions d’affectation de noms incompatibles.

Avant de contacter le support technique, vérifiez que vous utilisez un compte de stockage nouvellement créé qui n’a pas d’historique d’utilisation. Éviter de migrer vers un compte précédemment utilisé, ni un compte dans lequel des conteneurs ont été supprimés pour le vider. Dans votre compte Gen1, vérifiez que vous renommez les noms de fichiers ou de répertoires qui contiennent uniquement des espaces ou des onglets, se terminent par un ., contiennent un :ou contiennent plusieurs barres obliques (//).

Étape 7 : Migrer les charges de travail et les applications

  1. Configurez les services de vos charges de travail pour qu’ils pointent vers votre point de terminaison Gen2. Pour consulter des liens vers des articles qui vous aident à configurer Azure Databricks, HDInsight et d’autres services Azure de manière à utiliser Gen2, consultez les services Azure qui prennent en charge Azure Data Lake Storage Gen2.

  2. Mettez à jour les applications pour qu’elles utilisent les API Gen2. Consultez les guides suivants :

    Environnement Article
    Explorateur de stockage Azure Utiliser l’Explorateur Stockage Azure pour gérer les répertoires et les fichiers dans Azure Data Lake Storage Gen2
    .NET Utiliser .NET pour gérer les répertoires et les fichiers dans Azure Data Lake Storage Gen2
    Java Utiliser Java pour gérer les répertoires et les fichiers dans Azure Data Lake Storage Gen2
    Python Utiliser Python pour gérer les répertoires et les fichiers dans Azure Data Lake Storage Gen2
    JavaScript (Node.js) Utiliser JavaScript SDK dans Node.js pour gérer les répertoires et les fichiers dans Azure Data Lake Storage Gen2
    API REST API REST Azure Data Lake Storage
  3. Mettez à jour les scripts pour qu’ils utilisent les applets de commande PowerShell Data Lake Storage Gen2 et les commandes Azure CLI.

  4. Recherchez les références URI contenant la chaîne adl:// dans les fichiers de code, les notebooks Databricks, les fichiers HQL Apache Hive ou tout autre fichier utilisé dans le cadre de vos charges de travail. Remplacez ces références par l’URI formaté Gen2 de votre nouveau compte de stockage. Par exemple, l’URI Gen1 adl://mydatalakestore.azuredatalakestore.net/mydirectory/myfile peut devenir abfss://myfilesystem@mydatalakestore.dfs.core.windows.net/mydirectory/myfile.

Couche de compatibilité Gen1

Cette couche tente de fournir une compatibilité d’application entre Gen1 et Gen2 pour faciliter la migration, afin que les applications puissent continuer à utiliser des API Gen1 pour interagir avec les données dans le compte Gen2. Cette couche a des fonctionnalités limitées et il est recommandé de valider les charges de travail avec des comptes de test si vous utilisez cette approche dans le cadre de la migration. La couche de compatibilité s’exécute sur le serveur. Vous n’avez donc rien à installer.

Important

Microsoft ne recommande pas cette fonctionnalité en remplacement de la migration de vos charges de travail et applications. La prise en charge de la couche de compatibilité Gen1 se terminera à la mise hors service de Gen1, le 29 février 2024.

Pour rencontrer le moins de problèmes possible avec la couche de compatibilité, vérifiez que vos SDK Gen1 utilisent les versions suivantes (ou une version ultérieure).

Langage Version du SDK
.NET 2.3.9
Java 1.1.21
Python 0.0.51

Les fonctionnalités suivantes ne sont pas prises en charge dans la couche de compatibilité.

  • Option de l’API ListStatus permettant d’utiliser ListBefore avec une entrée.

  • API ListStatus avec plus de 4 000 fichiers sans jeton de continuation.

  • Encodage des blocs pour les opérations d’ajout.

  • Tous les appels d’API qui utilisent https://management.azure.com/ en tant qu’audience de jeton Microsoft Entra.

  • Noms de fichiers ou de répertoires avec uniquement des espaces ou des tabulations, se terminant par un ., contenant un : ou comportant plusieurs barres obliques consécutives (//).

Forum aux questions

Combien de temps prendra la migration ?

Les données et les métadonnées sont migrées en parallèle. Durée totale nécessaire à l’exécution d’une migration est égal à celui de ces deux processus en dernier.

Le tableau suivant indique la vitesse approximative de chaque tâche de traitement de migration.

Remarque

Ces estimations de temps sont approximatives et peuvent varier. Par exemple, la copie d’un grand nombre de petits fichiers peut compromettre le niveau de performance.

Traitement de la tâche Vitesse
Copie de données 9 To par heure
Validation des données 9 millions de fichiers ou de dossiers par heure
Copie des métadonnées 4 millions de fichiers ou de dossiers par heure
Traitement des métadonnées 25 millions de fichiers ou de dossiers par heure
Traitement des métadonnées supplémentaires (option de copie de données)1 50 millions de fichiers ou de dossiers par heure

1 Le temps de traitement des métadonnées supplémentaires s’applique uniquement si vous choisissez l’option Copier des données dans un nouveau compte Gen2. Ce temps de traitement ne s’applique pas si vous choisissez l’option Effectuer la migration vers un nouveau compte gen2.

Exemple : traitement d’une grande quantité de données et de métadonnées

Cet exemple suppose 300 To de données et 200 millions d’éléments de données et de métadonnées.

Tâche Heure estimée
Copier des données 300 To/9 To = 33,33 heures
Valider des données 200 millions/9 millions = 22,22 heures
Temps total de migration des données 33,33 + 22,2 = 55,55 heures
Copier des métadonnées 200 millions/4 millions = 50 heures
Traitement des métadonnées 200 millions/25 millions = 8 heures
Traitement des métadonnées supplémentaires : option de copie de données 200 millions/50 millions = 4 heures
Temps total de migration des métadonnées 50 + 8 + 4 = 62 heures
Durée totale d’exécution d’une migration de données uniquement 62 heures
Durée totale d’exécution d’une migration complète 62 - 4 = 58 heures
Exemple : traitement d’une petite quantité de données et de métadonnées

Cet exemple suppose 2 To de données et 56 000 éléments de données et de métadonnées.

Tâche Heure estimée
Copier des données (2 TB/9 TB) * 60 minutes = 13,3 minutes
Valider des données (56 000/9 millions) * 3600 secondes = 22,4 secondes
Temps total de migration des données 13,3 minutes + 22,4 secondes = environ 14 minutes
Copier des métadonnées (56 000/4 millions) * 3 600 secondes = environ 51 secondes
Traitement des métadonnées 56 000/25 millions = 8 secondes
Traitement des métadonnées supplémentaires : option de copie de données (56 000/50 millions) * 3600 secondes = 4 secondes
Temps total de migration des métadonnées 51 + 8 + 4 = 63 secondes
Durée totale d’exécution d’une migration de données uniquement 14 minutes
Durée totale d’exécution d’une migration complète 14 minutes - 4 secondes = 13 minutes et 56 secondes (environ 14 minutes)

Combien coûte la migration des données ?

L’utilisation de l’outil de migration basé sur le portail ne coûte rien, mais vous serez facturé pour l’utilisation des services Azure Data Lake Gen1 et Gen2. Pendant la migration des données, le stockage de données et les transactions du compte Gen1 vous seront facturés.

Après la migration, si vous avez choisi de copier uniquement les données, le stockage des données et les transactions des deux comptes (Azure Data Lake Gen1 et Gen2) vous seront facturés. Pour éviter d’être facturé pour le compte Gen1, supprimez le compte Gen1 après avoir mis à jour vos applications pour qu’elles pointent vers Gen2. Après la migration, si vous avez choisi d’effectuer une migration complète, seuls le stockage des données et les transactions du compte Gen2 vous seront facturés.

Vérifiez que tous vos comptes Azure Data lake Analytics ont bien été migrés vers Azure Synapse Analytics ou une autre plateforme de calcul prise en charge. Une fois que les comptes Azure Data Lake Analytics ont bien été migrés, réessayez. Si ce problème persiste et que vous disposez d’un plan de support, vous pouvez envoyer une demande de support. Vous pouvez également poser vos questions aux experts de la communauté dans Microsoft Q&A.

Une fois la migration terminée, est-ce que je peux revenir au compte Gen1 ?

Si vous avez utilisé l’Option 1 : Copier des données de Gen1 vers Gen2 mentionnée ci-dessus, les comptes Gen1 et Gen2 sont disponibles pour les lectures et écritures après la migration. En revanche, si vous avez utilisé l’Option 2 : Effectuer une migration complète, un retour au compte Gen1 n’est pas pris en charge. Dans l’Option 2, une fois la migration terminée, les données de votre compte Gen1 ne seront pas accessibles et seront supprimées au bout de 30 jours. Vous pouvez continuer à voir le compte Gen1 dans le portail Azure, puis, lorsque vous êtes prêt, le supprimer.

J’aimerais activer le stockage géoredondant (GRS) sur le compte compatible Gen2. Que dois-je faire ?

Une fois la migration terminée, aussi bien avec l’option « Copier les données » qu’avec l’option « Migration complète », vous pouvez remplacer l’option de redondance par GRS tant que vous n’envisagez pas d’utiliser la couche de compatibilité des applications. La compatibilité des applications ne fonctionnera pas dans les comptes qui utilisent la redondance GRS.

Gen1 ne comprend pas de conteneurs alors que Gen2 en contient. À quoi dois-je m’attendre ?

Lorsque nous copions les données vers votre compte Gen2, nous créons automatiquement un conteneur nommé « Gen1 ». Dans le conteneur Gen2, les noms ne peuvent pas être modifiés et, par conséquent, les données de migration peuvent être copiées vers un nouveau conteneur dans Gen2 en fonction des besoins.

Que dois-je prendre en compte en termes de performances de migration ?

Lorsque vous copiez les données vers votre compte Gen2, deux facteurs pouvant affecter les performances sont le nombre de fichiers et la quantité de métadonnées dont vous disposez. Par exemple, un nombre important de fichiers de petite taille peuvent affecter les performances de la migration.

Les API du système de fichiers WebHDFS seront-ils prises en charge sur les comptes Gen2 après la migration ?

Les API du système de fichiers WebHDFS de Gen1 seront prises en charge sur Gen2, mais avec certains écarts et seules les fonctionnalités limitées sont prises en charge via la couche de compatibilité. Les clients doivent planifier la mise en place d’API spécifiques à Gen2 pour améliorer les performances et les fonctionnalités.

Qu’advient-il de mon compte Gen1 après la date de mise hors service ?

Le compte devient inaccessible. Vous ne pourrez pas :

  • Gérer le compte

  • Accéder aux données dans le compte

  • Recevoir des mises à jour de service pour les API, SDK ou outils clients de Gen1

  • Accéder au support client Gen1 en ligne, par téléphone ou par e-mail

Consultez Action requise : Basculer vers Azure Data Lake Storage Gen2 avant le 29 février 2024.

Étapes suivantes