インポート・ノード (import node)
Synthetic Data Generator では、Import ノードを使用してデータベースやファイルからソースデータをインポートし、サンプルシードデータとして使用することができます。
- 説明
- Synthetic Data Generator フローのインポートノードを使用して、合成データを生成できるソースデータを取り込みます。 データベースやプロジェクト資産保存されたファイルからデータをインポートすることができます。
- ノードの使用
- インポートノードは通常、 Synthetic Data Generator フローの最初のノードである。 カスタムスキーマを使用していない限り、合成データを生成する前にデータをインポートする必要があります。
- テーブルのような構造化された形式で保存されているデータセットをインポートし、さらに処理するためにデータセットを次のノードに渡す。 詳細は Synthetic Data Generator のデータソースを参照。
- Synthetic Data Generator フローに複数の Import ノードを追加することはできますが、複数のノードを使用してデータを結合することはできません。
- 必須または任意
- インポートノードは、プロダクションデータを合成データのシードとして使用する場合に必須です。 カスタムスキーマから合成データを生成する場合は、Generateノードだけが必要です。
上書きされるストレージタイプ
importsがデータを Synthetic Data Generator インポートする際、データのレコードのサンプルを処理して、データの構造とデータ型を推測します。 このプロセスにおいて、各フィールドのデータに必要な Synthetic Data Generator ストレージタイプを設定します。 例えば、年齢フィールドには実数型が必要であると推測するかもしれません。 ただし、その推論が誤っている場合は、それを上書きできます。
- ノード データ資産 の設定で、セクション ストレージ を展開します。
- 変更したいフィールドで 「上書き」 を選択し、 ストレージリストから新しいタイプを選択します。
- 「タイプ 」セクションを展開し、「 パス 」を選択します。
注。Anonymizeノードを使用する際、ストレージタイプを上書きすることはできません。
スクリプトを使用してストレージタイプを上書きしたい場合は、以下の例を参考にパラメータをスクリプトに追加してください:
importnode1.setPropertyValue("custom_field_storage", "[[Age, false, Integer], [Sex, false, String], [BP, false, String], [Cholesterol, false, String], [Na, false, Real], [K, false, Real], [Drug, false, String]]")
importnode.setPropertyValue("default_value_mode", "Pass")
インポートノードを使用したスクリプト作成
スクリプト言語(例 Python :JavaScript)を使用して、ノードのプロパティをプログラムで設定できます。
ノードのプロパティをインポートする
以下のプロパティはインポートノード固有です。 一般的なノードのプロパティに関する情報は、 「フローとノードのプロパティ」 を参照してください。
| プロパティー名 | データ・タイプ | プロパティーの説明 |
|---|---|---|
asset_type |
ストリング | このプロパティはデータ型を指定します。 次のデータ型のいずれかを指定する必要があります: DataAsset または Connection. |
asset_id |
ストリング | が に設定 DataAsset された asset_type場合、 資産アセットのIDです。 データ資産を使用する場合は、身分証明書を提示する必要があります。 |
asset_name |
ストリング | が に設定された DataAssetasset_type 場合、これが資産の名前となります。 |
connection_id |
ストリング | がに設定された Connectionasset_type 場合、これはデータベース接続のIDです。 接続を利用する場合は身分証明書を提示する必要があります。 |
connection_name |
ストリング | がに設定 Connection された asset_type場合、これが接続の名前となります。 |
connection_path |
ストリング | がに設定 Connection された asset_type場合、これは接続内のテーブルへのパスです。 データベース接続に応じて、パスにはカタログとスキーマが含まれます。例えば catalog_name/schema_name/table_name、 |
user_settings |
ストリング | 接続のインタラクションプロパティを含むエスケープされたJSON文字列。例: "{\"interactionProperties\":{\"file_format\":\"csv\",\"encoding\":\"UTF-8\",\"first_line_header\":true,\"infer_schema\":true,\"infer_record_count\":1000,\"infer_as_varchar\":false,\"invalid_data_handling\":\"fail\",\"file_name\":\"input.csv\"}}"これらの値は、使用している接続の種類によって変わります。 |
例
以下はスクリプトで使用されるプロパティの例です。
import json
stream = sdg.script.stream()
importnode = stream.findByID("<import nodeId>")
# loads the string settings as a json object
userSettings = json.loads(dataassetimport.getPropertyValue("user_settings"))
userSettings["interactionProperties"]["sheet_name"] = "<new sheet name>"
importnode.setPropertyValue("user_settings", json.dumps(userSettings))