SnowConvert AI - Azure Synapse

SnowConvert AI for Azure Synapseとは

SnowConvert AI は、Azure Synapseスクリプトを理解し、このソースコードを機能的に同等のSnowflakeコードに変換するソフトウェアです。

変換タイプ

具体的には、 SnowConvert AI for Azure Synapseは次の変換を実行します。

Azure SynapseからSnowflake SQL へ

SnowConvert AI は、Azure Synapseソースコードを理解し、ソースコード内のデータ定義言語( DDL )、データ操作言語( DML )、関数を、ターゲットであるSnowflake内の対応する SQL に変換します。

サンプルコード

Azure Synapseの基本入力コード:

 CREATE TABLE Persons (
    PersonID int,
    LastName varchar(255),
    FirstName varchar(255),
    Address varchar(255),
    City varchar(255)
);
Copy

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"}}'
;
Copy

ご覧の通り、ほとんどの構造は変わりません。たとえば、データ型を変換しなければならない場合があります。

Azure SynapseストアドプロシージャからSnowflake SQL に埋め込まれた JavaScript へ

SnowConvert AI は、Azure Synapseストアドプロシージャを取得し、Snowflake SQL に埋め込まれた JavaScript に変換します。Azure Synapseの CREATE PROCEDURE は、SnowflakeのCREATE OR REPLACE PROCEDURE に置き換えられます。JavaScript はスクリプト言語として呼び出され、内部ステートメントはすべて JavaScript に変換されます。

サンプルコード

Azure Synapseの基本ストアドプロシージャ:

 CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;
Copy

Snowflake SQL 出力コード、埋め込み JavaScript:

 -- 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 AI Helpers Code
   // END REGION

 EXEC(`SELECT
   *
FROM
   Customers`);
$$;
;
Copy
  • JavaScript コードを作成するとき、プロシージャのコンテンツを簡単に変換するために必要な_helper_というコードが追加されます。

  • 変換されたコードで何が起きているのかを知るために、関連するコードとともに警告が表示されることが期待できます。(問題とトラブルシューティング を参照)

SnowConvert AI の用語

これらのコード変換のマジックに没頭する前に、ここで用語/定義のいくつかを紹介し、さまざまなドキュメントでこれらが使用されるときにその意味が分かるようにしておきます。

  • SQL (構造化クエリ言語): 大半の現代的なデータベースアーキテクチャーにおけるデータの保存、操作、検索のための標準言語。

  • SnowConvert AI :Azure SynapseファイルをSnowflakeクラウドデータプラットフォームに安全かつ自動的に変換するソフトウェアです。

  • 変換ルール または _変換ルール:_SnowConvert AI がソースコードの一部から期待されるターゲットコードに変換できるようにするルール。

  • パース: パースまたは構文解析は、SnowConvert AI がソースコードを理解し、変換ルールを処理するための内部データ構造を構築するために行われる初期処理です。

次の数ページでは、SnowConvert AI for SQL サーバーで実行できる変換の種類について詳しく説明します。始める準備ができたら、このドキュメントの[はじめるにあたり](../../SnowConvert.md)ページをご覧ください。