変換定義
変換定義はtoml形式で記述します。
変換データが下記の場合、記述するtomlは次のようになります。
トランザクションデータの例 2023/08/01,09:00:00,02,M03,23,5,x68573 |
変換定義
[global] encoding=”utf-8” separator="," timeunit = "sec" measurement=”edi_saperp” retention_file=7 retention_record=30 [csv_field_mapping] 3=”t_wpno” 4=”t_tcode” 5=”f_active” 6=”f_cpu” 7=”s_trxid” |
定義は、global、csv_field_mappingセクションに分かれます。
[global]セクション
encoding
入力データのエンコード方式を指定します。
【表 エンコード方式】
項目 | 説明 |
UTF-8(既定) | UTF-8(バイトオーダーマークなし) |
UTF-16 | UTF-16(バイトオーダーマークあり) |
Shift_JIS | Shift JIS |
EUC-JP | EUC-JP |
separator
入力データの区切り文字を指定します。指定できる値は次のとおりです。
・カンマ ",“
・タブ “\t”
timeunit
入力データの時刻の解像度を指定します。指定できる値は次のとおりです。
【表 時刻の指定値】
設定値 | 説明 |
min | HH:MM |
sec | HH:MM:SS |
measurement
変換結果のレコードをInfluxDBに保存する際のmeasurement名を指定します。
measurement名は「edi_」から始まり、以下の正規表現にマッチする必要があります。
"^edi_[a-z][a-z0-9_]*$"
フィールド数の異なるデータを1つのmeasurementとして格納するようなケースでは、同一のmeasurementキーで複数の変換定義を作成します。このため、他と同じ名前を設定可能としています。
retention_file
変換済ファイルを保持する日数を指定します。
1以上の日数を指定します。「1」を設定した場合、変換した翌日削除されます。
retention_record
InfluxDBに保存されたレコードはデフォルトではSource Dataの保存期間設定に準じて削除されます。
より短い保存期間を設定する場合にはこの設定を指定します。指定値は保持日数です。0に設定すると変換機能での削除を行いません。
[csv_field_mapping]セクション
実際の変換規則を指定します。キーはCSVの列番号を示し、固定フィールドとしてフィールド1(日付)、フィールド2(時刻)を使います。3フィールド目以降を指定します。
値はタグ名またはフィールド名を指定します。
tag/field名は以下の正規表現にマッチする必要があります。
"^[tfs]_[a-z][a-z0-9_]*$"
・値がt_で始まる場合はタグ
・f_で始まる場合は浮動小数点(double型)のフィールド
・s_で始まる場合はstring型のフィールド
タグはインデックスに基づいて処理されるため、高速に抽出することできます。フィールドはWhere句による抽出ではフルスキャンが使用されます。
現在のSheltyバージョンでは、string型のフィールド情報を統合ダッシュボード等で表示することはできません。
Related content
Copyright © IIM. All Rights Reserved.