Snowpark Migration Accelerator: SMA CLI の使用

説明

Snowpark Migration Accelerator(SMA)には、さまざまな操作を実行できるコマンドラインインターフェイス(CLI)が用意されています。この CLI を使用すると、コードプロセッサーを実行したり、アクセスコードを管理(インストールまたは表示)したり、 SMA アプリケーションで利用可能なその他のタスクを実行したりできます。

SMA は、すべての サポートされているソースプラットフォーム で動作する単一のコードプロセッサーを使用します。このプロセッサーに追加の引数を与える必要はありません。

インストール

コマンドラインインターフェイス(CLI)は、インストールする前に、アクセス可能な場所に ダウンロード する必要があります。使用するオペレーティングシステムに合ったインストールガイドを選択します。

コマンド

ツールを実行するには、要件に基づいて一連のコマンドを設定する必要があります。 long-command または short-command オプションは、以下の構文で使用できます。

sma [command] [argument] [command] [argument] ...
Copy

以下のコマンドを使用できます。コマンドをクリックすると、その詳細な説明が表示されます。

Long-commandShort-CommandDescription
--help-hDisplays help documentation.
--version-vDisplays current tool version.
install-access-codeinstall-acInstalls a new access code.
show-access-codeshow-acDisplays all installed access codes.
--input-iSpecifies the input folder location.
--output-oSpecifies the output folder location.
--assessment-aRuns the tool in assessment mode.
--mapDirectory-mSpecifies the folder containing custom mapping files.
--enableJupyter-jEnables or disables conversion of Databricks notebooks to Jupyter format.
--sql-fSpecifies which database engine syntax to use for SQL commands.
--customerEmail-eSets the customer email address.
--customerCompany-cSets the customer company name.
--projectName-pSets the project name.
--yes-ySkips confirmation prompts during execution.

アクセスコードのインストール

コード変換プロセスを開始するには、まずアクセスコードをインストールする必要があります。これには2つの方法があります。

  1. アクセスコードを直接入力します

  2. アクセスコードを含むファイルへのパスを提供します(この方法は、オフラインで作業している場合や、制限の多いファイアウォールの内側で作業している場合に便利です)

以下のコマンドを実行すると、アクセスコードをインストールできます。

sma install-access-code <access-code>
Copy

このコマンドは前のコマンドと同じ結果になります。

sma install-ac <access-code>
Copy

ファイルからアクセスコードをインストールするには、コマンドで --file または -f オプションを次のように使用します。

sma install-access-code --file <path-to-file>
or
sma install-access-code -f <path-to-file>
Copy

ライセンスのインストール中にエラーが発生した場合は、エラーメッセージが表示されます。

アクセスコードのリクエストについては、sma-support@snowflake.com にお問い合わせください

インストールされているアクセスコードの確認

現在コンピューターにインストールされているアクセスコードを確認するには、このコマンドを使用します。

sma show-access-code
Copy

このコマンドは、コンピューターに現在インストールされているすべてのアクセスコードの詳細を表示します。

変換

有効なライセンスをインストールした後、コードプロセッサーを実行してコードを変換できます。変換処理を開始するには、以下の引数を指定する必要があります。

  • 入力パス: 元のソースコードが格納されているフォルダー

  • 出力パス: 変換したコードを保存するフォルダー

プロジェクト情報

コードプロセッサーを初めて実行するときは、特定の引数を指定する必要があります。これらの引数は保存され、将来の実行に使用されます。必要な引数は、 アプリケーションで新しいプロジェクトを作成 するときに必要な引数と同じです。

  • お客様のメール: 有効なメールアドレスを入力します

  • お客様の会社: お客様の会社名を入力します

  • プロジェクト名: お客様のプロジェクト名を入力します

この例では、必須要件のみを使用してコードプロセッサーを実行する方法を示します。

sma -i <input-path> -o <output-path> -e <client email> -c <client company> -p <project name> <additional-parameters>
Copy

一連のコマンドを入力して「Enter」キーを押すと、ツールに現在の設定が表示され、プロセスを開始する前に確認を求められます。

処理開始前の現在の構成。

引数を追加または変更しますか。キャンセルする場合は「n」、続行する場合は「y」と入力します。

プロジェクト確認のスキップ

上記の確認プロンプトを回避するには、引数として --yes または -y のいずれかを追加します。これは、ツールをプログラムで使用する場合に特に重要です。これらのパラメーターがないと、毎回確認プロンプトが表示されるからです。

すべての利用可能なパラメーターに関する詳細情報については、こちらの リンク をご参照ください。

評価の実行

評価を実行する場合は、標準の変換コマンドに --assessment または -a オプションを追加します。以下にコマンドの例を示します。

sma --input <input-path> --output <output-path> --assessment <additional-parameters>
Copy

これらのコマンドにはそれぞれパラメーターを追加することができます。詳細については、「変換」セクションをご参照ください。

ツールバージョンの確認

ツールバージョンとコード処理エンジンを確認するには、以下のコマンドのいずれかを使用できます。

sma --version
sma -v
Copy

DatabricksノートブックからJupyter Notebooksへの変換の有効化

このオプションはPython(.python)やScala(.scala)のソースファイルをJupyter Notebook(.ipynb)ファイルに変換します。変換は、元のファイルがノートブックからエクスポートされたものであるか、通常のコードファイルであるかに関係なく機能します。

Jupyterノートブックを変換するには、 「--enableJupyter」 フラグか、その省略バージョン 「-j」 をコマンドに追加します。

sma -i <input-path> -o <output-path> --enableJupyter
Copy

ソースコードの SQL フレーバーの設定

SQL コマンドが検出されたときに使用する SQL の構文を指定できます。コマンド 「--sql」 またはそのショートカット 「-f」 のいずれかを使用します。サポートされている構文オプションは'SparkSql'(これがデフォルト)と'HiveSql'です。

sma --input <input-path> --output <output-path> --sql SparkSql
sma --input <input-path> --output <output-path> --sql HiveSql
Copy

お困りですか?

コマンドラインインターフェイス(CLI)の一般的なヘルプ情報を表示するには、以下のコマンドのいずれかを使用します。

sma --help
sma -h
Copy

ヘルプ情報

特定のコマンドの詳細については、このコマンドを実行します。

sma <command> --help
Copy

アクセスコードのインストールの詳細については、コマンド sma install-access-code --help を実行します。