SnowConvert: Azure Synapse¶
O que é o SnowConvert para o Azure Synapse?¶
O SnowConvert é um software que entende os scripts do Azure Synapse e converte esse código-fonte em código Snowflake funcionalmente equivalente.
Tipos de conversão
Especificamente, o SnowConvert para Azure Synapse realiza as seguintes conversões:
Azure Synapse para Snowflake SQL¶
O SnowConvert compreende o código-fonte do Azure Synapse e converte a Linguagem de Definição de Dados (DDL), a Linguagem de Manipulação de Dados (DML) e as funções no código-fonte para o SQL correspondente no destino: Snowflake.
Código da amostra¶
Código de entrada básico do Azure Synapse:
CREATE TABLE Persons (
PersonID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);
Código de saída Snowflake SQL:
CREATE OR REPLACE TABLE Persons (
PersonID INT,
LastName VARCHAR(255),
FirstName VARCHAR(255),
Address VARCHAR(255),
City VARCHAR(255)
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"azure synapse"}}'
;
Como você pode ver, a maior parte da estrutura permanece a mesma. Há alguns casos em que os tipos de dados precisam ser transformados, por exemplo.
Procedimentos armazenados do Azure Synapse para JavaScript incorporados no Snowflake SQL ¶
O SnowConvert pega os procedimentos armazenados do Azure Synapse e os converte em JavaScript incorporados ao Snowflake SQL. O CREATE PROCEDURE do Azure Synapse é substituído pelo CREATE OR REPLACE PROCEDURE do Snowflake. O JavaScript é chamado de linguagem de script, e todas as instruções internas são convertidas para JavaScript.
Código da amostra¶
Procedimento armazenado básico do Azure Synapse:
CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;
Código de saída Snowflake SQL, com JavaScript incorporado:
-- Additional Params: -t JavaScript
CREATE OR REPLACE PROCEDURE SelectAllCustomers ()
RETURNS STRING
LANGUAGE JAVASCRIPT
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"transact"}}'
EXECUTE AS CALLER
AS
$$
// REGION SnowConvert Helpers Code
// END REGION
EXEC(`SELECT
*
FROM
Customers`);
$$;
!!!RESOLVE EWI!!! /*** SSC-EWI-0040 - THE STATEMENT IS NOT SUPPORTED IN SNOWFLAKE ***/!!!
;
Ao criar o código JavaScript, há uma parte do código adicionada como um helper, necessária para facilitar a transformação do conteúdo do procedimento.
Você pode esperar ver avisos com um código associado para ajudá-lo a descobrir o que está acontecendo no código convertido. (Consulte problemas e resolução de problemas)
Terminologia do SnowConvert¶
Antes de nos perdermos na mágica dessas conversões de código, aqui estão alguns termos/definições para que você saiba o que queremos dizer quando começarmos a usá-los em toda a documentação:
SQL (Structured Query Language): a linguagem padrão para armazenar, manipular e recuperar dados na maioria das arquiteturas modernas de banco de dados.
SnowConvert: o software que converte de forma segura e automática seus arquivos do Azure Synapse para a plataforma de dados em nuvem Snowflake.
Conversion rule ou transformation rule: regras que permitem que o SnowConvert converta de uma parte do código-fonte para o código-alvo esperado.
Parse: A análise é um processo inicial realizado pelo SnowConvert para entender o código-fonte e criar uma estrutura de dados interna necessária para executar as regras de conversão.
Nas próximas páginas, você saberá mais sobre os tipos de conversões que o SnowConvert para SQL Server é capaz de fazer. Se estiver pronto para começar, visite a página Introdução nesta documentação.