インポート・ノード (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 ストレージタイプを設定します。 例えば、年齢フィールドには実数型が必要であると推測するかもしれません。 ただし、その推論が誤っている場合は、それを上書きできます。

  1. ノード データ資産 の設定で、セクション ストレージ を展開します。
  2. 変更したいフィールドで 「上書き」 を選択し、 ストレージリストから新しいタイプを選択します。
  3. タイプ 」セクションを展開し、「 パス 」を選択します。
注。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)を使用して、ノードのプロパティをプログラムで設定できます。

ノードのプロパティをインポートする

以下のプロパティはインポートノード固有です。 一般的なノードのプロパティに関する情報は、 「フローとノードのプロパティ」 を参照してください。

表 1. スクリプティング用のノードプロパティ
プロパティー名 データ・タイプ プロパティーの説明
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))