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

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

    • PDF

    記事の要約

    概要

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

    入力ファイル形式

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

    • CSV/TSV
    • JSON Lines
    • JSONPath
    • LTSV
    • Microsoft Excel(xlsxまたはxlsファイル)
    • XML(β版)
    • Parquet
    XMLファイルの転送について

    XMLファイル形式の転送機能は、β版でのご提供となっています。
    正式版リリース時には、仕様が変更される可能性があります。

    Parquetファイルの転送に対応しているコネクタ

    Parquetファイル形式の転送には、以下のコネクタのみが対応しています。

    本記事の対象となるコネクタ

    設定項目

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

    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関数)といった都度計算結果が変化する関数は、転送実行時に再計算されません。ご注意ください。

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

    XML(β版)

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

    STEP1 基本設定

    項目名デフォルト値説明
    ルートのパス(XPath形式)-Xpathの探索の基準となるノードへのルートパスを入力します。
    XMLファイル内のすべてのノードを探索対象としたい場合は、/を入力してください。
    カラム設定-取得したいノードのパスをXpath形式で入力します。
    XPathの記法については、XPath Syntaxを参照ください。
    カラム型は以下から選択できます。
  • string
  • long
  • timestamp
  • double
  • boolean
  • json
  • timestampを選択した場合は、フォーマットおよびタイムゾーンも入力してください。
    XML名前空間について

    XML名前空間で定義した接頭辞と組み合わせたパスの指定はできません。

    Parquet

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

    自動データ設定のファイルサイズの制限について

    転送設定STEP2にて行われる自動データ設定の結果、以下のエラーが発生することがあります。

    file:/example.tmp is not a Parquet file. Expected magic number at tail
    

    このエラーは、自動データ設定に利用したParquetファイルのサイズが大きすぎると発生します。
    この場合、以下の対応を取ってください。

    1. 転送対象のParquetファイルからスキーマ情報を抽出し、同一スキーマで軽量なParquetファイルをサンプルとして作成します。
    2. 転送設定STEP1の自動データ設定・カラム定義の再読み込み・スキーマ変更検知で使用するファイル > 別ファイルを指定にて、作成したParquetファイルをアップロードします。
      • この際、プレビューでも使用するは有効にしてください。
    3. (既存の転送設定を編集している場合)転送設定STEP2に遷移する際に自動データ設定を実行します。
    ジョブ実行時のファイルサイズの制限について

    メモリ不足によるエラーが発生する場合は、転送対象のファイルを分割することを検討してください。


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