SnowConvert AI - Résumé de la conversion globale

Section Résumé général de la conversion du rapport d'évaluation pour Oracle

Nombre total de fichiers

Représente le nombre de fichiers détectés dans l’adresse d’entrée et qui ont été migrés avec succès par SnowConvert.

CSV : Nom du champ associé

  • TotalFiles

Exemple

input_folder
   ├> sql_file.sql
   ├> notes.txt
   └> views.csv
Copy
output_folder
   └> sql_file.sql
Copy

Nombre total de fichiers attendus : 1

Explication : avec l’échantillon précédent, seul le fichier SQL sera valide pour la migration, car les deux autres fichiers ont une extension que SnowConvert AI ne peut pas reconnaître.

Fichiers SQL

Note

Ce champ ne s’applique qu’aux rapports Teradata.

Il s’agit du nombre de fichiers détectés dans le dossier d’entrée dont l’extension est .sql, .ddl ou .dml.

CSV : Nom du champ associé

  • SqlFileCount

Exemple

input_folder
    ├> ddl_file.ddl
    ├> dml_file.dml
    ├> sql_file.sql
    ├> other_file.ignore
    └> bteq_file.bteq
Copy
output_folder
    ├> ddl_file.ddl
    ├> dml_file.dml
    ├> sql_file.sql
    └> bteq_file_BTEQ.py
Copy

Fichiers SQL attendus : 3

Explication : dans ce cas, les 3 fichiers avec des extensions DDL, DML et SQL sont reconnus comme des fichiers SQL. Les autres extensions ne sont pas prises en compte pour les fichiers SQL. Les fichiers de script Teradata ne sont pas pris en compte pour les fichiers SQL, ceux-ci sont pris en compte pour les fichiers de script.

Fichiers de script

Note

Ce champ ne s’applique qu’aux rapports Teradata.

Il s’agit du nombre de fichiers du dossier d’entrée qui sont du type suivant :

  • BTEQ : .bteq, .btq

  • FastLoad : .fload, .fl

  • MultiLoad : .mload, .mld, ml

  • TPump : .tpump, .tp

  • TPT : .tpt

CSV : Nom du champ associé

  • ScriptFileCount

Exemple

input_folder
    ├> bteq_file.bteq
    ├> btq_file.btq
    ├> fload_file.fload
    ├> mload_file.mload
    ├> sql_file.sql
    ├> tpt_file.tpt
    └> tpump_file.tpump
Copy
output_folder
    ├> bteq_file_BTEQ.py
    ├> btq_file_BTEQ.py
    ├> fload_file_FastLoad.py
    ├> mload_file_MultiLoad.py
    ├> sql_file.sql
    ├> tpt_file_TPT.py
    └> tpump_file_TPump.py
Copy

Fichiers de script attendus : 6

Explication : dans ce cas, les 6 fichiers avec des extensions de fichiers Script sont reconnus comme des fichiers Script. Les 2 extensions pour les fichiers BTEQ précédemment mentionnés sont pris en compte, mais le fichier SQL ne l’est pas, car c’est un fichier SQL.

Nombre total de fichiers non générés

Représente le nombre de fichiers trouvés dans l’adresse d’entrée qui, en raison d’un échec dans SnowConvert AI n’a pas pu générer le fichier de sortie migré.

CSV : Nom du champ associé

  • TotalFilesNotGenerated

Exemple

input_folder
   ├> input1.sql
   ├> input2.sql
   └> input3.sql
Copy
output_folder
   ├> input1.sql
   └> input2.sql
Copy

Nombre total de fichiers non générés attendu : 1

Explication :

Vitesse de conversion

Représente le nombre de lignes traitées par seconde pendant la migration.

Formule

total_lines_of_code / conversion_time
Copy

CSV : Nom du champ associé

  • ConversionSpeed

Exemple

CREATE TABLE table1(
     column1 INT,
     column2 INT
     column3 INT
);

CREATE VIEW view1 AS
SELECT orderkey
FROM orders;
Copy

Vitesse de conversion attendue : 4 lignes/seconde

Explication : Supposons que le temps d’exécution de l’exemple était de 2 secondes, compte tenu du fait que le nombre de lignes est de 8. En appliquant la formule 8/2 = 4, la vitesse de conversion est donc de 4 lignes par seconde.

Temps de conversion

Représente la durée de la migration SnowConvert AI.

CSV : Nom du champ associé

  • ElapsedTime

Nombre total d’erreurs de conversion

Le nombre total d’erreurs de conversion qui se sont produites au cours du processus de conversion. Ce type d’erreur peut être lié à l’E/S des fichiers, à la gestion de la mémoire ou à toute situation anormale ne pouvant être gérée par SnowConvert AI. Il s’agit d’exceptions de code non gérées et elles sont considérées comme des problèmes critiques.

CSV : Nom du champ associé

  • TotalConversionErrors

Nombre total d’erreurs d’analyse

Nombre total d’erreurs d’analyse qui se sont produites au cours du processus d’analyse du code. Une erreur d’analyse se produit lorsque l’analyseur (le composant qui lit les fichiers de code source) rencontre un événement inattendu. Il s’agit généralement d’une erreur de syntaxe, c’est-à-dire d’un élément de code dans le fichier qui ne correspond pas à la spécification grammaticale SQL attendue par l’analyseur. Dans d’autres cas, ces erreurs peuvent également se produire car l’analyseur n’est pas encore prêt à prendre en charge une grammaire spécifique. Les erreurs d’analyse sont également considérées comme des problèmes critiques. Si ce nombre est élevé par rapport à la taille de la charge de travail de migration, une révision du code d’entrée est conseillée.

CSV : Nom du champ associé

  • TotalParsingErrors

Exemple

-- Statement without parsing error
CREATE TABLE table1(
     column1 INT,
     column2 INT
);

-- Statements with parsing error
CRATE TABLE table2(
     column1 INT
);

CREATE VIEW view1 AS
SELECT orderkey
FROM FROM orders;
Copy
-- Statement without parsing error
CREATE OR REPLACE TABLE table1 (
     column1 INT,
     column2 INT
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"teradata"}}'
;

-- ** SSC-EWI-0001 - UNRECOGNIZED TOKEN ON LINE '8' COLUMN '1' OF THE SOURCE CODE STARTING AT 'CRATE'. EXPECTED 'STATEMENT' GRAMMAR. LAST MATCHING TOKEN WAS 'CRATE' ON LINE '8' COLUMN '1'. CODE '81'. **
---- Statements with parsing error
--CRATE TABLE table2(
--     column1 INT
--)
 ;

--** SSC-FDM-0007 - MISSING DEPENDENT OBJECT "orders" **
CREATE OR REPLACE VIEW view1
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"teradata"}}'
AS
SELECT
     orderkey
-- ** SSC-EWI-0001 - UNRECOGNIZED TOKEN ON LINE '14' COLUMN '1' OF THE SOURCE CODE STARTING AT 'FROM'. EXPECTED 'FROM' GRAMMAR. LAST MATCHING TOKEN WAS 'FROM' ON LINE '14' COLUMN '1'. FAILED TOKEN WAS 'FROM' ON LINE '14' COLUMN '6'. CODE '44'. **
--FROM
    ;
Copy

Nombre total d’erreurs d’analyse attendu : 2

Explication : La première table présentée ne comporte pas d’erreur d’analyse, sa grammaire est parfaitement correcte ; mais les deux instructions suivantes présentent des erreurs d’analyse en raison d’un problème grammatical, comme la deuxième table dont la commande CREATE comporte une faute d’orthographe, ou le terme FROM en double de la commande SELECT de la vue.

Nombre total d’avertissements

Le nombre total d’avertissements que SnowConvert AI a générés pour l’entrée donnée. Un avertissement est inséré lorsque la traduction d’un élément spécifique est principalement équivalente sur le plan fonctionnel, mais il existe certains cas particuliers dans lesquels une intervention de l’utilisateur peut être nécessaire. Ils ont une faible gravité parce que leur intention est de fournir des informations qui peuvent être consultées si le code montre une différence fonctionnelle lorsqu’il est exécuté sur la plateforme cible.

CSV : Nom du champ associé

  • TotalWarnings

Exemple

CREATE TABLE table1(
     COL1 SYS.XMLTYPE
);

SELECT TIMESTAMP '1998-12-25 09:26:50.12' AT LOCAL
FROM DUAL;

CREATE TABLE table2(
INTERVAL_YEAR_TYPE INTERVAL YEAR(2)
);
Copy
CREATE OR REPLACE TABLE table1 (
     COL1 SYS.XMLTYPE
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"teradata"}}'
;

SELECT
     TIMESTAMP '1998-12-25 09:26:50.12'
FROM
     DUAL;

CREATE OR REPLACE TABLE table2 (
INTERVAL_YEAR_TYPE VARCHAR(21) !!!RESOLVE EWI!!! /*** SSC-EWI-0036 - INTERVAL YEAR(2) DATA TYPE CONVERTED TO VARCHAR ***/!!!
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"teradata"}}'
;
Copy

Nombre total d’avertissements attendu : 3

Explication : Dans le dernier exemple, un type d’avertissement est indiqué dans les trois instructions.

Nombre total de lignes de code (LOC)

Le nombre total de lignes de code dans les fichiers d’entrée, qui ont été traitées par l’outil de conversion.

Note

Les lignes vierges ne sont pas comptées.

CSV : Nom du champ associé

  • TotalLinesOfCode

Exemple

CREATE TABLE table1(
 column1 INT
);

-- Create View
CREATE VIEW view1 AS
SELECT orderkey
FROM orders;
Copy

Nombre total de lignes de code attendu (LOC) : 8

Explication : Bien que le fichier indique 10 lignes, les lignes de code valides sont au nombre de 8, car les lignes vierges ne sont pas comptées.