SnowConvert AI - Resumo geral da conversão¶

Total de arquivos¶
Representa o número de arquivos descobertos no endereço de entrada e que foram migrados com êxito pelo SnowConvert.
Nome do campo associado CSV¶
TotalFiles
Exemplo¶
input_folder
├> sql_file.sql
├> notes.txt
└> views.csv
output_folder
└> sql_file.sql
Total de arquivos esperado: 1
Explicação: com a amostra anterior, teremos apenas o arquivo SQL como válido para migração, pois os outros dois arquivos têm uma extensão que oSnowConvert AI não pode reconhecer.
Arquivos SQL¶
Nota
Esse campo se aplica somente a relatórios Teradata.
Esse é o número de arquivos detectados na pasta de entrada que têm uma extensão .sql, .ddl ou .dml.
Nome do campo associado CSV¶
SqlFileCount
Exemplo¶
input_folder
├> ddl_file.ddl
├> dml_file.dml
├> sql_file.sql
├> other_file.ignore
└> bteq_file.bteq
output_folder
├> ddl_file.ddl
├> dml_file.dml
├> sql_file.sql
└> bteq_file_BTEQ.py
Arquivos SQL esperados: 3
Explicação: neste caso, os 3 arquivos com extensões DDL, DML e SQL são reconhecidos como arquivosSQL. Outras extensões não são contadas como arquivos SQL. Os arquivos de script Teradata não são contados como arquivos SQL, eles são contados como arquivos de script.
Arquivos de script¶
Nota
Esse campo se aplica somente a relatórios Teradata.
Esse é o número de arquivos na pasta de entrada que são do seguinte tipo:
BTEQ: .bteq, .btq
FastLoad: .fload, .fl
MultiLoad: .mload, .mld, ml
TPump: .tpump, .tp
TPT: .tpt
Nome do campo associado CSV¶
ScriptFileCount
Exemplo¶
input_folder
├> bteq_file.bteq
├> btq_file.btq
├> fload_file.fload
├> mload_file.mload
├> sql_file.sql
├> tpt_file.tpt
└> tpump_file.tpump
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
Arquivos de script esperados: 6
Explicação: nesse caso, os 6 arquivos com extensões com extensões de arquivo de script são reconhecidos como arquivos de script. As 2 extensões para arquivosBTEQ mencionados anteriormente são contados, mas o arquivo SQL não é contado porque é um arquivo SQL.
Total de arquivos não gerados¶
Representa o número de arquivos encontrados no endereço de entrada que, devido a uma falha no SnowConvert AI, não conseguiu gerar o arquivo de saída migrado.
Nome do campo associado CSV¶
TotalFilesNotGenerated
Exemplo¶
input_folder
├> input1.sql
├> input2.sql
└> input3.sql
output_folder
├> input1.sql
└> input2.sql
Arquivo total esperado não gerado: 1
Explicação:
Velocidade de conversão¶
Representa o número de linhas processadas por segundo durante a migração.
Fórmula¶
total_lines_of_code / conversion_time
Nome do campo associado CSV¶
ConversionSpeed
Exemplo¶
CREATE TABLE table1(
column1 INT,
column2 INT
column3 INT
);
CREATE VIEW view1 AS
SELECT orderkey
FROM orders;
Velocidade de conversão esperada: 4 linhas/s
Explicação: Digamos que o tempo de execução do exemplo foi de 2 segundos, levando em conta que o número de linhas é 8. Aplicando a fórmula 8/2 = 4, a velocidade de conversão é de 4 linhas por segundo.
Tempo de conversão¶
Representa a duração da migração do SnowConvert AI.
Nome do campo associado CSV¶
ElapsedTime
Total de erros de conversão¶
A contagem total de erros de conversão que ocorreram durante o processo de conversão. Esse tipo de erro pode estar relacionado a operações de E/S de arquivos, gerenciamento de memória ou qualquer situação anormal que não possa ser tratada pelo SnowConvert AI. São exceções de código não tratadas e são consideradas problemas críticos.
Nome do campo associado CSV¶
TotalConversionErrors
Total de erros de análise¶
A contagem total de erros de análise que ocorreram durante o processo de análise de código. Um erro de análise ocorre quando o analisador (o componente que lê os arquivos de código-fonte) encontra algo inesperado. Isso geralmente significa um erro de sintaxe, que se refere a um elemento de código no arquivo que não corresponde à especificação da gramática SQL que o analisador estava esperando. Em outros casos, esses erros também podem ocorrer porque o analisador ainda não está pronto para suportar uma gramática específica. Os erros de análise também são considerados problemas críticos. Se esse número for alto em relação ao tamanho da carga de trabalho de migração, é recomendável revisar o código de entrada.
Nome do campo associado CSV¶
TotalParsingErrors
Exemplo¶
-- 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;
-- 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
;
Total de erros de análise esperados: 2
Explicação: A primeira tabela apresentada não tem erro de análise, toda a gramática está correta, mas as duas instruções seguintes apresentam erros de análise porque têm um problema de gramática, como a segunda tabela que CREATE tem um erro de ortografia, ou o FROM duplo no SELECT da exibição.
Total de avisos¶
A contagem total de avisos que oSnowConvert AI gerou para a entrada fornecida. Um aviso é inserido quando a conversão de um elemento específico é, na maior parte, funcionalmente equivalente, mas existem alguns casos extremos nos quais pode ser necessária a intervenção do usuário. Eles têm baixa severidade porque têm a intenção de fornecer informações que podem ser revisadas caso o código apresente algum tipo de diferença funcional quando executado na plataforma de destino.
Nome do campo associado CSV¶
TotalWarnings
Exemplo¶
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)
);
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"}}'
;
Total esperado de avisos: 3
Explicação: No último exemplo, há um tipo de aviso em todas as três instruções.
Total de linhas de código (LOC)¶
O número total de linhas de código nos arquivos de entrada, que foram processados pela ferramenta de conversão.
Nota
As linhas em branco não são contadas.
Nome do campo associado CSV¶
TotalLinesOfCode
Exemplo¶
CREATE TABLE table1(
column1 INT
);
-- Create View
CREATE VIEW view1 AS
SELECT orderkey
FROM orders;
Total de linhas de código esperadas (LOC): 8
Explicação: Embora o arquivo mostre 10 linhas, as linhas de código válidas são 8, pois as linhas em branco não são contadas.