翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ステップ 1. JSON 設定ファイルを作成する
カスタムビジュアル変換を定義して記述するには、JSON 設定ファイルが必要です。設定ファイルのスキーマは次の通りです。
JSON ファイル構造
フィールド
-
name: string
– (必須) 変換の識別に使用される変換システム名。Python の変数名 (識別子) に設定されているのと同じ命名規則に従ってください。具体的には、文字またはアンダースコアで始まり、文字、数字、および/またはアンダースコアのみで構成されている必要があります。 -
displayName: string
– (オプション) AWS Glue Studio ビジュアルジョブエディタに表示される変換の名前。displayName
を指定しない場合は、AWS Glue Studio ではname
が変換の名前として使用されます。 -
description: string
– (オプション) 変換の説明が AWS Glue Studio に表示され、検索できます。 -
functionName: string
– (必須) Python 関数名が Python スクリプトで呼び出す関数を識別するために使用されます。 -
path: string
– (オプション) Python ソースファイルへの Amazon S3 のフルパス。指定しない場合は、AWS Glue では、ファイル名マッチングを使用して .json ファイルと .py ファイルがペアリングされます。例えば、JSON ファイルの名前がmyTransform.json
の場合、同じ Amazon S3 ロケーションにあるmyTransform.py
という Python ファイルとペアになります。 -
parameters: Array of TransformParameter object
– (オプション) AWS Glue Studio ビジュアルエディタで設定するときに表示されるパラメータのリスト。
TransformParameter フィールド
-
name: string
– (必須) ジョブスクリプト内で名前付き引数として Python 関数に渡されるパラメータ名。Python の変数名 (識別子) に設定されているのと同じ命名規則に従ってください。具体的には、文字またはアンダースコアで始まり、文字、数字、および/またはアンダースコアのみで構成されている必要があります。 -
displayName: string
– (オプション) AWS Glue Studio ビジュアルジョブエディタに表示される変換の名前。displayName
を指定しない場合は、AWS Glue Studio ではname
が変換の名前として使用されます。 -
type: string
– (必須) 一般的な Python データ型を受け入れるパラメータ型。有効な値: 'str' | 'int' | 'float' | 'list' | 'bool'。 -
isOptional: boolean
– (オプション) パラメータがオプションかどうかを決定します。デフォルトでは、すべてのパラメータが必須です。 -
description: string
– (オプション) ユーザーによる変換パラメータの設定に役立つ説明が AWS Glue Studio に表示されます。 -
validationType: string
– (オプション) このパラメータの検証方法を定義します。現在、正規表現のみをサポートしています。デフォルトで検証タイプはRegularExpression
に設定されています。 -
validationRule: string
– (オプション)validationType
がRegularExpression
に設定されている場合、送信前にフォーム入力を検証するために使用される正規表現。正規表現の構文は RegExp Ecmascript の仕様に合致している必要があります。 -
validationMessage: string
– (オプション) 検証が失敗したときに表示するメッセージ。 -
listOptions: An array of TransformParameterListOption object
またはstring
、もしくは「column」という文字列の値 — (オプション) 選択、または複数選択の UI コントロールに表示するためのオプション。カンマ区切り値 (CSV) のリスト、または強く型付けされたTransformParameterListOption
型の JSON オブジェクトを受け入れます。文字列の値「column」を指定すると、親ノードのスキーマから、列のリストを動的に入力することもできます。 -
listType: string
– (オプション) type = 'list' のオプションタイプを定義します。有効な値: 'str' | 'int' | 'float' | 'list' | 'bool'。一般的な Python データ型を受け入れるパラメータ型。
TransformParameterListOption フィールド
-
value: string | int | float | bool
– (必須) オプション値。 -
label: string
– (オプション) 選択ドロップダウンに表示されるオプションラベル。
AWS Glue Studio での変換パラメータ
.json ファイルで isOptional
と指定しない限り、デフォルトでパラメータは必須です。AWS Glue Studio では、パラメータが [Transform] (変換) タブに表示されます。この例は、E メールアドレス、電話番号、年齢、性別、出身国などのユーザー定義パラメータを示しています。
validationRule
パラメータを指定し、validationMessage
で検証メッセージを指定することで、JSON ファイルで正規表現を使用する際に AWS Glue Studio で一部の検証を必須にできます。
"validationRule": "^\\(?(\\d{3})\\)?[- ]?(\\d{3})[- ]?(\\d{4})$", "validationMessage": "Please enter a valid US number"
注記
検証はブラウザで行われるため、正規表現の構文は RegExp Ecmascript の仕様
検証を追加することで、ユーザーが誤ったユーザー入力でジョブを保存するのを防ぐことができます。次の例のように AWS Glue Studio に検証メッセージが表示されます。
パラメータは、パラメータ設定に基づいて AWS Glue Studio に表示されます。
-
type
がstr
、int
、またはfloat
の場合、テキスト入力フィールドが表示されます。例えば、スクリーンショットは「E メールアドレス」と「年齢」パラメータの入力フィールドを示しています。 -
type
がbool
の場合、チェックボックスが表示されます。 -
type
がstr
であり、listOptions
が指定されていると、単一選択リストが表示されます。 -
type
がlist
であり、listOptions
とlistType
が指定されていると、複数選択リストが表示されます。
列のセレクタをパラメータとして表示
スキーマから列をユーザーが選択するように設定されている場合は、列セレクタを表示することで、ユーザーは列の名前を入力する必要がなくなります。listOptions
フィールドを「column」に設定すると、親ノードの出力スキーマに基づいて、列セレクタを AWS Glue Studio が動的に表示します。AWS Glue Studio は単一の列、または複数列のセレクタを表示できます。
次の例でスキーマを使用しています。
単一の列を表示するように、Custom Visual Transform パラメータを定義するには
-
JSON ファイルで、
parameters
オブジェクトのlistOptions
の値を、「column」に設定します。これにより、ユーザーが AWS Glue Studio の選択リストから列を選択できるようになります。 -
次のようにパラメータを定義すると、複数の列を選択することもできます。
-
listOptions: "column"
-
type: "list"
-