テンプレートETL

Prev Next

概要

転送設定のSTEP2 詳細設定で設定できるテンプレートETLの各項目について説明するDocsです。

カラム定義

STEP1で設定した転送元から取得したデータから、列の絞り込みや追加を行い、転送する列を指定します。
元カラムに対して、以下の変更が可能です。

  • カラム名
  • データ型
  • デフォルト値
  • 日時フォーマット(日時データの場合)

転送元のカラムに変更があった場合は、カラム定義を再読み込みをクリックすることで最新の定義に更新できます。
詳しくは、カラム定義を再読み込みを参照ください。

template-etl-2024-08-29-22-47-0

JSONカラムを展開

転送元から取得してきたデータのうちフィールドにJSON型の値が格納されている場合、カラム定義の中でJSONカラムを展開を選択できます。
JSONに格納されているデータに対して、カラム名・JSONパス・データ型・日付フォーマット・タイムゾーンを指定することによって、カラムとして展開します。
展開後のカラム名は、他のカラム名と重複しないユニークな値を入力してください。

template-etl-2024-08-29-22-47-1

なお、JSON内に配列が含まれている場合の値の取得については、転送元カラムのJSONに配列が含まれていた際、要素を指定して値を取得する方法を参照ください。

カラム名・データ型の一括変換

選択したカラムの命名規則、およびデータ型を一括で変換できます。
各カラム左側にあるチェックボックスを選択し、一括変換をクリックすると、一括変換のためのダイアログが表示されます。

image.png

なお、データ型の変換は、以下の型の変換に対応しています。

  • STRING型
  • LONG型
  • TIMESTAMP型
  • DOUBLE型
  • BOOLEAN型
  • JSON型

カラム名規則の変換

以下の4種類から選択できます。

変換形式 変換例 概要
大文字変換 AccountId -> ACCOUNTID
account_id -> ACCOUNT_ID
小文字を大文字に変換します。
ハイフン(-)やアンダースコア(_)といった記号文字は維持されます。
スネークケース(snake_case)変換 AccountId -> account_id
account id -> account_id
キャメルケースをスネークケースに変換します。
大文字はすべて小文字に変換されます。
なお、半角スペースもアンダースコア(_)に変換されます。
アッパースネークケース(UPPER_SNAKE_CASE)変換 AccountId -> ACCOUNT_ID
account id -> ACCOUNT_ID
キャメルケースをスネークケースに変換します。
小文字はすべて大文字に変換されます。
なお、半角スペースもアンダースコア(_)に変換されます。
サニタイズ(Google BigQueryカラム名互換)変換 account.id-> account_id
account id -> account_id
Google BigQueryのカラム名規則に即した形で変換します。
ドット(.)やハイフン(-)といった記号文字および半角スペースは、アンダースコア(_)に変換されます。
なお、日本語などのマルチバイト文字もアンダースコア(_)に変換されます。ご注意ください。

フィルター設定

データの行を絞り込むための条件を、AND条件OR条件で設定します。
対象カラム名とフィルター値を指定し、対象カラムの値が条件に一致する行のみ転送できます。
以下の演算子を選択できます。

  • >:対象カラムの値がフィルター値より大きい
  • >=:対象カラムの値がフィルター値以上の行
  • <:対象カラムの値がフィルター値未満の行
  • <=:対象カラムの値がフィルター値以下の行
  • ==:対象カラムの値がフィルター値と等しい
  • !=:対象カラムの値がフィルター値と異なる
  • start_with:対象カラムの値がフィルター値の文字列から始まる
  • end_with:対象カラムの値がフィルター値の文字列で終わる
  • include:対象カラムの値がフィルター値の文字列を含む
  • IS NULL:対象カラムの値がNULLである
  • IS NOT NULL:対象カラムの値がNULLでない
  • REGEXP:対象カラムの値がフィルター値の正規表現にパターンマッチする

template-etl-2024-08-29-22-47-3

マスキング設定

指定したフィールドの指定した部分を * で置換します。
個人情報など元データのまま転送したくない列を、マスキングした状態で転送できます。
マスキングのタイプは4種類あり、それぞれ以下の通りです。

タイプ 説明
全文字列 すべて * で置換します。
メールアドレス @マークまでを * で置換します。
正規表現 正規表現パターンにマッチした箇所を * で置換します。
部分文字列 開始位置・終了位置を指定して、* で置換します。

template-etl-2024-08-29-22-47-4

転送日時カラム設定

転送ジョブ実行の開始日時を記録するカラムを追加する場合に設定します。
転送ジョブを実行した日時によるパーティショニングやシャーディングテーブル化をする場合にご利用ください。

転送日時カラムを追加する場合は、転送日時カラムの追加にチェックを入れて、下記項目で出力形式を指定してください。

image.png

項目名 説明
追加するカラム名 転送日時を出力するカラム名を入力します。
データ型 データ型を以下から選択します。
  • timestamp
  • string
フォーマット 出力する転送日時のフォーマットを指定します。
データ型stringを選択した場合のみ指定可能です。
データ型timestampを選択した場合は、固定で%Y-%m-%d %H:%M:%S.%N %Zとなります。

timestamp型のタイムゾーン指定子(%Z)の扱い方は転送先のサービスによって異なります。
プレビューに表示される形式(例:2023-12-01 15:30:45 UTC)と転送されたタイムスタンプの表示形式は異なる場合があります。
タイムゾーン 出力する転送日時のタイムゾーンを選択します。
データ型stringを選択した場合のみ選択可能です。
  • Etc/UTC
  • Asia/Tokyo

  • 例:Asia/Tokyoを選択した場合
  • フォーマット%ZにはJSTが展開される
  • フォーマット%zには+0900Etc/UTCとの時差)が展開される

データ型timestampを選択した場合は、固定でEtc/UTCとなります。

文字列 正規表現置換

特定のカラムで、指定した正規表現にマッチする部分を別の文字列に置換します。
表記ゆれ修正のためにスペースや記号を削除するなど、データの整形で利用できる機能です。
詳しくは、文字列正規表現置換についてを参照ください。

カラムハッシュ化

個人情報など元データのまま転送したくない列を、SHA-256でハッシュ化したものに変換して転送します。
厳密には暗号化ではない点についてご留意ください。

文字列変換

対象カラム名と変換方法を指定して、String型の文字列を変換します。
全角英数字を半角にしたり、半角カナを全角にするなどの正規化ができます。
詳しくは、文字列変換機能についてを参照ください。

UNIX時間変換

対象カラム名と変換方法を指定して、UNIX時間と日時形式を変換します。

項目名 説明
対象カラム名 UNIX時間変換を適用するカラム名を入力します。
カラム定義で設定したカラム名を入力してください。
変換方法 変換方法を以下から選択します。
  • 「UNIX時間 -> 日時(TIMESTAMP型)」
  • 「UNIX時間 -> 日時(STRING型)」
  • 「日時(TIMESTAMP型) -> UNIX時間」
  • 「日時(STRING型) -> UNIX時間」
指定値によって後続の設定項目が異なります。
それぞれ変換方法を「UNIX時間 -> 日時」にした場合変換方法を「日時 -> UNIX時間」にした場合を参照ください。

変換方法を「UNIX時間 -> 日時」にした場合

変更方法で「UNIX時間 -> 日時(TIMESTAMP型)」または「UNIX時間 -> 日時(STRING型)」を選択した場合の設定項目です。

項目名 説明
変換前のUNIX時間の単位 変換前のUNIX時間の単位を以下から選択します。
  • ミリ秒
  • マイクロ秒
  • ナノ秒
変換後のフォーマット 変換後の日時フォーマットを指定します。
変換方法で「UNIX時間 -> 日時(STRING型)」を選択した場合のみ指定可能です。
変換方法で「UNIX時間 -> 日時(TIMESTAMP型)」を選択した場合は、固定で%Y-%m-%d %H:%M:%S.%N %Zとなります。

TIMESTAMP型のタイムゾーン指定子(%Z)の扱い方は転送先のサービスによって異なります。
プレビューに表示される形式(例:2023-12-01 15:30:45 UTC)と転送後されたタイムスタンプの表示形式は異なる場合があります。
変換後のタイムゾーン 変換後の日時のタイムゾーンを選択します。
変換方法で「UNIX時間 -> 日時(STRING型)」を選択した場合のみ選択可能です。
変換方法で「UNIX時間 -> 日時(TIMESTAMP型)」を選択した場合は、固定でEtc/UTCとなります。

変換方法を「日時 -> UNIX時間」にした場合

変更方法で「日時(TIMESTAMP型) -> UNIX時間」または「日時(STRING型) -> UNIX時間」を選択した場合の設定項目です。

項目名 説明
変換前のフォーマット 変換前の日時フォーマットを指定します。
変換方法で「日時(STRING型) -> UNIX時間」を選択した場合のみ指定可能です。
データ型で「UNIX時間 -> 日時(TIMESTAMP型)」を選択した場合は、固定で%Y-%m-%d %H:%M:%S.%N %Zとなります。
変換前のタイムゾーン 変換前の日時のタイムゾーンを選択します。
変換方法で「日時(STRING型) -> UNIX時間」を選択した場合のみ選択可能です。
データ型で「UNIX時間 -> 日時(TIMESTAMP型)」を選択した場合は、固定でEtc/UTCとなります。
変換後のUNIX時間の単位 変換後のUNIX時間の単位を以下から選択します。
  • ミリ秒
  • マイクロ秒
  • ナノ秒