Snowpark Migration Accelerator : Comprendre le résumé de l’évaluation

After running an assessment, you can view the initial results and summary in the Assessment Summary Report.

Keep in mind that this report summarizes the information from the inventory files created in the Output Reports folder during the SMA execution. For a comprehensive analysis, please review the Detailed Report in the output directory.

La section Résultats de l’évaluation de l’application contient plusieurs composants qui sont expliqués en détail ci-dessous.

Résumé de l’évaluation standard

Le résumé s’affiche comme indiqué ci-dessous :

Résumé de l'évaluation

In the top-right corner of the report, the Execution date indicates when the analysis was run.

Score de préparation Snowpark Connect

Le score de préparation Snowpark Connect ressemblera à ceci :

Score de préparation Snowpark Connect

  1. Score de préparation - Il vous indiquera le score de préparation que vous avez obtenu. Le score de préparation Snowpark Connect indique la proportion de références Spark API qui sont prises en charge par Snowpark Connect. Ce score est calculé en divisant le nombre de références Spark API prises en charge par le nombre total de références Spark API. Vous pouvez en apprendre plus sur ce score dans la section Score de préparation Snowpark Connect.

  2. Explication du score - Une explication de ce qu’est le score de préparation Snowpark Connect et comment l’interpréter.

  3. Étapes suivantes - En fonction du score de préparation obtenu, SMA vous indiquera les actions que vous devez entreprendre avant de passer à l’étape suivante.

  4. Vue détaillée du score - Une explication détaillée de la façon dont le score de préparation Snowpark Connect a été calculé. En l’occurrence, il vous montrera le nombre de références Spark API prises en charge par Snowpark Connect divisées par le nombre total de références Spark API.

Utilisations prises en charge fait référence au nombre de références Spark API dans une charge de travail qui sont prises en charge par Snowpark Connect. En revanche, Utilisations identifiées représentent le nombre total de références Spark API trouvées dans cette charge de travail.

Utilisations de Spark API

Danger

La section Utilisations de Spark API est obsolète depuis la version 2.0.2. Vous pouvez maintenant trouver :

Le rapport contient trois sections principales affichées sous forme d’onglets :

  1. Classification de l’utilisation globale

  2. Catégorisation des utilisations de Spark API

  3. Utilisations de Spark API par statut

Nous examinerons chaque section en détail ci-dessous.

Classification de l’utilisation globale

Cet onglet affiche une table contenant trois lignes indiquant les éléments suivants :

  • Opérations prises en charge

  • Opérations non prises en charge

  • Statistiques sur l’utilisation totale

Classification de l'utilisation globale

Vous trouverez plus de détails dans la section suivante :

  1. Nombre d’utilisations - Le nombre total de fois où les fonctions Spark API sont référencées dans votre code. Chaque référence est classée comme prise en charge ou non prise en charge, les totaux étant indiqués en bas de page.

  2. Fichiers avec au moins 1 utilisation - Le nombre de fichiers qui contiennent au moins une référence Spark API. Si ce nombre est inférieur au nombre total de fichiers, cela signifie que certains fichiers n’utilisent pas du tout Spark API.

  3. Pourcentage de tous les fichiers - Indique la proportion de vos fichiers qui utilisent Spark API. Ce chiffre est calculé en divisant le nombre de fichiers utilisant Spark API par le nombre total de fichiers de code, exprimé en pourcentage.

Catégorisation des utilisations de Spark API

Cet onglet affiche les différents types de références Spark détectées dans votre base de code. Il indique le score global de préparation (qui est le même que celui affiché en haut de la page) et fournit une ventilation détaillée de ce score par catégorie.

Catégorisation des utilisations de Spark API

Vous trouverez toutes les catégories disponibles dans la section Catégories de référence Spark.

Utilisations de Spark API par statut

Le dernier onglet présente une ventilation catégorielle organisée par statut de mappage.

Utilisations de Spark API par statut

L’outil SMA utilise sept statuts de mappage principaux qui indiquent dans quelle mesure le code Spark peut être converti en Snowpark. Pour obtenir des informations détaillées sur ces statuts, reportez-vous à la section Catégories de référence Spark.

Appels d’importation

Danger

La section Appels d’importation est obsolète depuis la version 2.0.2. Vous pouvez maintenant trouver :

La section « Appels d’importation » affiche les importations de bibliothèques externes fréquemment utilisées trouvées dans votre base de code. Notez que les importations Spark API sont exclues de cette section, car elles sont traitées séparément dans la section « Spark API ».

Appels d'importation

Cette table contient les informations suivantes :

Le rapport affiche les informations suivantes :

  1. Une table de 5 lignes affiche les éléments suivants :

    • Les 3 bibliothèques Python les plus fréquemment importées

    • Une ligne « Autres » qui récapitule tous les paquets restants

    • Une ligne « Total » indiquant la somme de toutes les importations

  2. Une colonne « Pris en charge dans Snowpark » indiquant si chaque bibliothèque est incluse dans la liste des paquets Snowflake pris en charge dans Snowpark.

  3. Une colonne « Nombre d’importations » indiquant combien de fois chaque bibliothèque a été importée dans tous les fichiers.

  4. Une colonne « Couverture des fichiers » indiquant le pourcentage de fichiers contenant au moins une importation de chaque bibliothèque. Par exemple :

    • Si « sys » apparaît 29 fois dans les instructions d’importation mais qu’il n’est utilisé que dans 28,16 % des fichiers, cela suggère qu’il est généralement importé une fois par fichier où il est utilisé.

    • La catégorie « Autres » peut afficher 56 importations dans 100 % des fichiers.

Pour des informations détaillées sur l’importation par fichier, référez-vous au fichier ImportUsagesInventory.csv dans les rapports de sortie .

Résumé du fichier

Danger

La section Résumé du fichier est obsolète depuis la version 2.0.2. Vous pouvez maintenant trouver :

Le rapport du résumé contient plusieurs tables affichant des métriques organisées par type et taille de fichier. Ces métriques fournissent des informations sur le volume de la base de code et permettent d’estimer l’effort requis pour le projet de migration.

L’outil Snowpark Migration Accelerator analyse tous les fichiers de votre base de code source, y compris les fichiers de code et les fichiers non codés. Vous trouverez des informations détaillées sur les fichiers analysés dans le rapport files.csv.

Le résumé du fichier contient plusieurs sections. Examinons chaque section en détail.

Résumé du type de fichier

Le résumé du type de fichier affiche une liste de toutes les extensions de fichier trouvées dans votre référentiel de codes analysés.

Résumé du type de fichier

Les extensions de fichiers répertoriées indiquent les types de fichiers de code que SMA peut analyser. Pour chaque extension de fichier, vous trouverez les informations suivantes :

  • Lignes de code - Nombre total de lignes de code exécutables dans tous les fichiers portant cette extension. Ce nombre exclut les commentaires et les lignes vides.

  • Nombre de fichiers - Le nombre total de fichiers trouvés avec cette extension.

  • Pourcentage du nombre total de fichiers - Pourcentage que représentent les fichiers portant cette extension par rapport à l’ensemble des fichiers du projet.

Pour analyser votre charge de travail, vous pouvez facilement identifier si elle est principalement constituée de fichiers de script (tels que Python ou R), de fichiers notebook (comme Jupyter notebooks) ou de fichiers SQL. Ces informations permettent de déterminer les principaux types de fichiers de code de votre projet.

Taille des notebooks par langage

L’outil évalue les notebooks de votre base de code et leur attribue une taille de « t-shirt » (S, M, L, XL) en fonction du nombre de lignes de code qu’ils contiennent. Cette taille permet d’estimer la complexité et le champ d’application de chaque notebook.

Taille des notebooks par langage

Les tailles des notebooks sont classées en fonction du langage de programmation principal utilisé dans chaque notebook.

Statistiques notebook par langage

Cette table affiche le nombre total de lignes de code et de cellules dans tous les notebooks, organisés par langage de programmation.

Statistiques notebook par langage

Ces notebooks sont organisés en fonction du langage de programmation principal utilisé dans chaque notebook.

Contenu du fichier de code

Lorsque vous utilisez SMA, le nom de l’onglet change en fonction de votre langue source :

  • Pour les fichiers source Python, l’onglet affichera « Contenu du fichier Python »

  • Pour les fichiers source Scala, l’onglet affichera « Contenu du fichier Scala »

Cette ligne indique le nombre de fichiers contenant des références Spark API. La ligne « Utilisations de Spark » affiche :

  1. Le nombre de fichiers utilisant des APIs Spark

  2. Le pourcentage de ces fichiers par rapport au nombre total de fichiers de base de code analysés

Contenu du fichier de code

Cette métrique permet d’identifier le pourcentage de fichiers qui ne contiennent pas d’API Spark. Un faible pourcentage suggère que de nombreux fichiers de code n’ont pas de dépendances Spark, ce qui pourrait signifier que l’effort de migration pourrait être moins important que ce qui avait été initialement estimé.

Taille du fichier de code

Le nom de l’onglet Taille du fichier change en fonction de votre langue source :

  • Pour les fichiers source Python, il se nomme « Taille du fichier Python »

  • Pour les fichiers source Scala, il se nomme « Taille du fichier Scala »

Les fichiers de base de code sont classés avec la méthode Taille de t-shirt (S, M, L, XL). Chaque taille a des critères spécifiques décrits dans la colonne « Taille ». La table indique également le pourcentage de l’ensemble des fichiers Python appartenant à chaque catégorie de taille.

Taille du fichier de code

Comprendre la répartition de la taille des fichiers dans votre base de code peut aider à évaluer la complexité de la charge de travail. Un pourcentage élevé de petits fichiers suggère généralement des charges de travail plus simples et moins complexes.

Résumé des problèmes

Le résumé des problèmes fournit des informations essentielles sur les problèmes potentiels détectés lors de l’analyse du code. Lors de la transition de l’évaluation à la conversion, vous verrez apparaître une liste d’EWIs (Erreurs, Avertissements et Problèmes) détectés dans votre base de code. Pour une explication détaillée de ces problèmes, veuillez vous référer à la section Analyse des problèmes de la documentation.

Résumé des problèmes

En haut du Résumé des problèmes, vous trouverez une table qui donne un aperçu de tous les problèmes identifiés.

Résumé des problèmes - Table récapitulative

La table contient deux lignes.

  • Le « Nombre de problèmes » représente le nombre total de tous les codes de problème trouvés dans chaque catégorie.

  • Le « Nombre de problèmes uniques » représente le nombre de codes d’erreur distincts trouvés dans chaque catégorie.

Les problèmes sont répartis en trois catégories principales :

  • Les Avertissements indiquent des différences potentielles entre les plateformes source et cible qui ne nécessitent pas d’action immédiate mais qui doivent être prises en compte lors des tests. Il peut s’agir de légères variations de comportement pour des cas particuliers ou de notifications concernant des changements d’apparence par rapport à la plateforme source.

  • Les Problèmes de conversion mettent en évidence les éléments qui n’ont pas été convertis ou qui nécessitent une configuration supplémentaire pour fonctionner correctement dans la plateforme cible.

  • Les problèmes d’analyse surviennent lorsque l’outil ne peut pas interpréter des éléments de code spécifiques. Il s’agit de problèmes critiques nécessitant une attention immédiate. Ils sont généralement causés par un code source non compilable ou une extraction de code incorrecte. Si vous pensez que votre code source est correct et que vous continuez de recevoir des erreurs d’analyse, cela peut être dû à un modèle non reconnu dans SMA. Dans de tels cas, veuillez signaler un problème et inclure la section du code source qui pose problème.

La table résume le décompte total pour chaque élément.

Sous cette table, vous trouverez une liste de codes de problèmes uniques et leurs descriptions.

Résumé des problèmes - Table des codes de problème

Chaque entrée de code de problème fournit :

  • L’identificateur de problème unique

  • Une description du problème

  • Le nombre d’occurrences

  • Le niveau de gravité (Avertissement, Erreur de conversion ou Erreur d’analyse)

Vous pouvez cliquer sur n’importe quel code de problème pour afficher la documentation détaillée qui comprend :

  • Une description complète du problème

  • Exemple de code

  • Solutions recommandées

Par exemple, en cliquant sur le premier code de problème indiqué ci-dessus (SPRKPY1002), vous accéderez à la page de documentation qui lui est consacrée.

Par défaut, la table n’affiche que les 5 premiers problèmes. Pour afficher tous les problèmes, cliquez sur le bouton SHOW ALL ISSUES situé sous la table. Vous pouvez également utiliser la barre de recherche au-dessus de la table pour rechercher des problèmes spécifiques.

La compréhension du travail de conversion restant est cruciale pendant le mode d’évaluation. Vous trouverez des informations détaillées sur chaque problème et son emplacement dans l’inventaire des problèmes dans le dossier Rapports.

Résumé de l’exécution

Le résumé de l’exécution donne un aperçu complet de l’analyse récente de l’outil. Cela comprend :

  • Le score de l’analyse du code

  • Détails de l’utilisateur

  • L’ID d’exécution unique

  • Informations sur la version de SMA et de Snowpark API

  • Emplacements des dossiers du projet qui ont été spécifiés lors de la création du projet

Résumé de l'exécution

Annexes

Les annexes contiennent des informations de référence supplémentaires qui peuvent vous aider à mieux comprendre la sortie générée par l’outil SMA.

image (512).png

Ce guide contient des informations de référence générales sur l’utilisation de Snowpark Migration Accelerator (SMA). Bien que le contenu puisse être mis à jour périodiquement, il se concentre sur l’utilisation universelle de SMA plutôt que sur des détails concernant des bases de code spécifiques.


C’est ce que la plupart des utilisateurs verront lorsqu’ils lanceront l’outil Snowpark Migration Accelerator (SMA). Si vous utilisez une version plus ancienne, il se peut que le résumé abrégé de l’évaluation s’affiche à la place, comme indiqué ci-dessous.

Résumé abrégé de l’évaluation \N[Obsolète]

Si votre score de préparation est faible, votre résumé de migration peut se présenter comme suit :

Résumé de l'évaluation

Ce résumé contient les informations suivantes :

  • Date d’exécution : Indique la date à laquelle votre analyse a été effectuée. Vous pouvez afficher les résultats de toute exécution antérieure pour ce projet.

  • Résultat : Indique si votre charge de travail est adaptée à la migration sur la base du score de préparation . Le score de préparation est un outil d’évaluation préliminaire. Il ne garantit pas la réussite de la migration.

  • Dossier d’entrée : Emplacement des fichiers source qui ont été analysés.

  • Dossier de sortie : Emplacement de stockage des rapports d’analyse et des fichiers de code convertis.

  • Nombre total de fichiers : Nombre de fichiers analysés.

  • Durée d’exécution : Durée du processus d’analyse.

  • Références Spark identifiées : Nombre d’appels Spark API trouvés dans votre code.

  • Nombre de fichiers Python (ou Scala) : Nombre de fichiers de code source dans le langage de programmation spécifié.


Prochaines étapes

The application provides several additional features, which can be accessed through the interface shown in the image below.

  • Réessayer l’évaluation - Vous pouvez relancer l’évaluation en cliquant sur le bouton Réessayer l’évaluation sur la page des résultats de l’évaluation. Cette fonction est utile lorsque vous apportez des modifications au code source et que vous souhaitez afficher les résultats mis à jour.

  • Convert to the Snowpark API - While this may seem like the next logical step, it’s important to review the assessment results thoroughly before proceeding. For more information, see the conversion section of this documentation.

  • Afficher les rapports - Ouvre le dossier contenant les rapports de sortie de l’évaluation. Il s’agit notamment du rapport d’évaluation détaillé, de l’inventaire de référence Spark et d’autres analyses de votre base de code source. Chaque type de rapport est expliqué en détail dans cette documentation.

Les pages suivantes fournissent des informations détaillées sur les rapports générés à chaque exécution de l’outil.