入力ファイル形式の設定について
  • 13 Feb 2023
  • 1 分で読み終わります
  • ダーク
    ライト

入力ファイル形式の設定について

  • ダーク
    ライト

概要

転送元ファイル・ストレージ系コネクタでは、転送設定のSTEP1にて入力ファイル形式を設定し、STEP2の入力オプションにて入力ファイルに対する詳細設定を行うことができます。
本ページでは、troccoが対応する入力ファイル形式とコネクタ、および入力オプションの各種設定項目について説明します。

入力ファイル形式

転送設定編集のSTEP1にて、以下から選択できます。

  • CSV/TSV
  • JSON Lines
  • JSONPath
  • LTSV
  • Microsoft Excel(xlsxまたはxlsファイル)

ファイル・ストレージ系コネクタ

設定項目

入力ファイル形式によって、設定項目は異なります。

CSV/TSV

Embulkのcsv-parser-pluginを使用しています。

STEP2 入力オプション

項目名 デフォルト値 説明
区切り文字 , CSVデータの区切り文字を設定します。
引用符 " 引用符を設定できます。
エスケープ文字 \ エスケープ文字を設定できます。
NULLに置換される文字列 設定しない NULLに置換する文字列を設定できます。
設定するを選択すると、置換対象の文字列を入力できます。
スキップするヘッダー行数 0 何番目の行までをスキップするか設定します。
たとえば、1行目が項目名になっていて、項目名の行を転送データに含めたくない場合は、1を設定してください。
引用符がない場合に値から空白を取り除く いいえ 引用符がない場合に値から空白を取り除くかどうかを設定できます。
イレギュラーなクオートの処理方式 ACCEPT_ONLY_RFC4180_ESCAPED クオート付きフィールド内にイレギュラーなクオートが存在した場合の処理方法を設定します。
詳しくは、csv-parser-pluginquotes_in_quoted_fieldsを参照ください。
コメントラインマーカー - ここで設定した文字が行のはじめにあったら、その行をスキップします。
カラム数が減っている行の処理 不正なレコードとして処理する 不正なレコードとして処理するを選択した場合、カラム数が不足しているレコードが存在したときに、該当する行の処理をスキップします。
足りないカラムをNULL補完するを選択した場合、カラム数が不足しているレコードが存在したときに、NULL値を補完して処理を続行します。
カラム数が増えている行の処理 不正なレコードとして処理する 不正なレコードとして処理するを選択した場合、カラム数が超過しているレコードが存在したときに、該当する行の処理をスキップします。
カラムを無視して処理を選択した場合、カラム数が超過しているレコードが存在したときに、あふれた列を無視して処理を続行します。
引用符で囲める最大データ量 131072 引用符で囲める最大データ量(byte単位)を設定します。
ここで設定した値より大きなデータ量のものが存在した場合は、その行の処理をスキップします。
不正なレコードが存在した場合に転送を中止するかどうか 転送を中止する 転送を中止するを選択した場合、不正なレコードが存在したときに、転送を中止します。
処理を続行を選択した場合、不正なレコードが存在したときに、NULL値を補完して処理を続行します。
デフォルトのタイムゾーン UTC 読み込んだデータ自体にタイムゾーンに関する情報がない場合に、タイムスタンプ型の列で用いるタイムゾーンを設定できます。
日付初期設定 1970-01-01 日付列で、日付が認識できなかった場合のデフォルト値を設定できます。
改行 CRLF 改行に関するルールをCRLF、LF、CRの中から設定します。
文字エンコーディング - 文字エンコーディングの方式を設定できます。
未入力の場合は、自動データ設定時に自動的に推測されます。

JSON Lines

embulk-parser-jsonlを使用しています。

STEP2 入力オプション

項目名 デフォルト値 説明
不正なレコードが存在した場合に転送を中止するかどうか 転送を中止する 転送を中止するを選択した場合、不正なレコードが存在したときに、転送を中止します。
処理を続行を選択した場合、不正なレコードが存在したときに、NULL値を補完して処理を続行します。
デフォルトのタイムゾーン UTC 読み込んだデータ自体にタイムゾーンに関する情報がない場合に、タイムスタンプ型の列で用いるタイムゾーンを設定できます。
改行 CRLF 改行に関するルールをCRLF、LF、CRの中から設定できます。
文字エンコーディング - 文字エンコーディングの方式を設定できます。
未入力の場合は、自動データ設定時に自動的に推測されます。

JSONPath

embulk-parser-jsonpathを使用しています。

STEP1 基本設定

項目名 デフォルト値 説明
JSONPath - JSONPathの書き方については、Operatorsを参照ください。
※全指定する場合は$.*と指定してください。

STEP2 入力オプション

項目名 デフォルト値 説明
ルート - STEP1 基本設定の「JSONPath」と同様の設定です。
デフォルトのタイムゾーン UTC 読み込んだデータ自体にタイムゾーンに関する情報がない場合に、タイムスタンプ型の列で用いるタイムゾーンを設定できます。

LTSV

STEP2 入力オプション

項目名 デフォルト値 説明
改行 CRLF 改行に関するルールをCRLF、LF、CRの中から設定できます。
文字エンコーディング - 文字エンコーディングの方式を設定できます。
未入力の場合は、自動データ設定時に自動的に推測されます。

Microsoft Excel

embulk-parser-poi_excelを使用しています。

STEP1 基本設定

項目名 デフォルト値 説明
シート名 - 転送対象のシート名を入力します。
スキップするヘッダー行数 1 何番目の行までをスキップするか設定します。
たとえば、1行目が項目名になっていて、項目名の行を転送データに含めたくない場合は、1を設定してください。
カラム設定 - カラム名・カラム型・値の取得方法を設定します。
値の取得方法について、
  • キャッシュ利用を選択した場合
    • Excelファイルがローカルで保存された時点での計算結果を利用するため、転送処理が高速化されます。
  • 転送時再計算を選択した場合
    • 転送時にセル内の数式を再計算します。
日時カラムのタイムゾーン Asia/Tokyo タイムスタンプ型の列で用いるタイムゾーンを設定できます。
計算結果が都度異なる関数

カラム設定の値の取得方法にてキャッシュ利用を選択した場合、Excelファイルがローカルで保存された時点での値を利用して転送を行います。
そのため、日付/時刻関数(例.TODAY関数)や乱数生成関数(例.RAND関数)といった都度計算結果が変化する関数は、転送実行時に再計算されません。ご注意ください。

転送実行時にセル内の数式を再計算する必要がある場合は、転送時再計算を選択してください。


この記事は役に立ちましたか?