SnowConvert: SQL サーバー¶
SnowConvert for SQL Serverとは¶
SnowConvert は、 SQL Serverスクリプトを理解し、このソースコードを関数的に等価なSnowflakeコードに変換するソフトウェアです。
変換タイプ
具体的には、 SnowConvert for SQL Server は以下の変換を実行します。
SQL ServerからSnowflake SQL へ¶
SnowConvert は SQL Serverのソースコードを理解し、ソースコード内のデータ定義言語(DDL)、データ操作言語(DML)、および関数をSnowflakeターゲット内の対応する SQL に変換します。
サンプルコード¶
SQL Serverの基本入力コード:
CREATE TABLE Persons (
PersonID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);
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":"transact"}}'
;
ご覧の通り、ほとんどの構造は変わりません。たとえば、データ型を変換しなければならない場合があります。
SQL ServerストアドプロシージャからSnowflake SQL に埋め込まれた JavaScript へ¶
SnowConvert は、 SQL Serverのストアドプロシージャを JavaScript に変換し、Snowflake SQL に埋め込みます。SQL Serverの CREATE PROCEDURE は、Snowflakeの CREATE OR REPLACE PROCEDURE に置き換えられます。JavaScript はスクリプト言語として呼び出され、内部ステートメントはすべて JavaScript に変換されます。
サンプルコード¶
SQL Serverの基本的なストアドプロシージャ:
CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;
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 Helpers Code
// END REGION
EXEC(`SELECT
*
FROM
Customers`);
$$;
!!!RESOLVE EWI!!! /*** SSC-EWI-0040 - THE STATEMENT IS NOT SUPPORTED IN SNOWFLAKE ***/!!!
;
JavaScript コードを作成するとき、プロシージャのコンテンツを簡単に変換するために必要な_helper_というコードが追加されます。
変換されたコードで何が起きているのかを知るために、関連するコードとともに警告が表示されることが期待できます。(参照: 問題とトラブルシューティング)
SnowConvert 用語集¶
これらのコード変換のマジックに没頭する前に、ここで用語/定義のいくつかを紹介し、さまざまなドキュメントでこれらが使用されるときにその意味が分かるようにしておきます。
SQL (構造化クエリ言語): 大半の現代的なデータベースアーキテクチャーにおけるデータの保存、操作、検索のための標準言語。
SnowConvert: SQL Serverファイルを安全かつ自動的にSnowflakeクラウドデータプラットフォームに変換するソフトウェアです。
変換ルール または 変換ルール: SnowConvert がソースコードの一部を予想されるターゲットコードに変換できるようにするルール。
解析: 解析または構文解析は、 SnowConvert がソースコードを理解し、変換ルールを実行するために必要な内部データ構造を構築するために行われる初期処理です。
次のページでは、 SnowConvert for SQL Serverでどのような変換が可能かについて詳しくご紹介します。始める準備ができたら、このドキュメントの はじめるにあたり ページに移動します。