コンテンツにスキップ

PlaidCloudのプロジェクトテーブルを、CSV(カンマ区切り値)ファイルとして、ドキュメントアカウントに書き込みます。最も一般的なエクスポート形式で、ほぼすべての下流システム、表計算ツール、BIプラットフォームでサポートされています。

区切り文字(カンマ、タブ、パイプ、カスタム)、引用符の扱い、ヘッダー行、エンコードを設定できます。

エクスポートファイルセレクター

エクスポートファイルセレクター

この変換のファイルセレクターでは、エクスポート結果を保存する PlaidCloud ドキュメントの保存先を選択できます。

ディレクトリを選択し、ターゲットファイルのファイル名を指定します。

ソーステーブル

Dynamic オプション

Dynamic オプションでは、変数を含むテキストでテーブルを指定できます。テーブルやビューの参照が指定した変数に応じて決まる、変数駆動型のワークフローで便利です。

current_month 変数を使用して、ソーステーブルを動的に指定する例:

legal_entity/inputs/{current_month}/ledger_values

Static オプション

エクスポートのソースとして特定のテーブルを使用する場合は、Dynamic ボックスをオフのままにして、ソーステーブルを選択します。

テーブルエクスプローラーは、どのテーブル選択でも常に利用できます。テーブル選択の右側にあるテーブルエクスプローラーボタンをクリックすると、テーブルエクスプローラーのウィンドウが開きます。

ドキュメントアカウントの選択

アクセス権のある PlaidCloud ドキュメントアカウントを選択します。これにより、次の選択でディレクトリを選択できるようになります。

プロジェクト内では、リストの先頭に Project Default も表示されます。これは、プロジェクトで現在デフォルトに設定されているアカウントの代わりとなる項目です。プロジェクトにデフォルトがある場合、新しいステップでは Project Default が事前に選択されます。既存のステップは、変更するまで保存時のアカウントのままです。Project Default のままにしたステップは、実行時にプロジェクトのデフォルトになっているアカウントに対して実行されます。デフォルトが設定されていない場合は、他のアカウントにフォールバックせず、実行は失敗し、プロジェクトが示されます。

ターゲットディレクトリパス

ターゲットディレクトリパスの右側にある参照アイコンを選択し、ファイルの保存先に移動します。

ターゲットファイル名

エクスポートするファイルを保存する名前を指定します。

エクスポートされるファイルはすべて非圧縮ですが、次の圧縮オプションを使用できます。

  • 圧縮なし
  • Zip
  • GZip
  • BZip2

CSVエクスポートのデータ形式

Export CSV変換は、データテーブルを、PlaidCloudドキュメントに保存される区切りテキストファイルにエクスポートするために使用します。区切り文字の種類には、次のものがありますが、これらに限りません。

  • Excel CSV(カンマ区切り)

  • Excel TSV(タブ区切り)

  • ユーザー定義の区切り文字 –>

    • カンマ(,)
    • パイプ(|)
    • セミコロン(;)
    • タブ
    • スペース( )
    • その他/カスタム(チルダ、ダッシュなど)

カスタムの区切り文字を指定するには、ユーザー定義の区切り文字 –> を選択し、続けてその他 –> を選択して、テキストボックスにカスタムの区切り文字を入力します。

特殊文字セクションでは、引用符やエスケープ文字を含むデータの扱いを指定できます。次の設定から選択します。

  • 特殊文字(QUOTE_MINIMAL):特殊文字を含むフィールドを引用符で囲みます(同じダイアレクトとオプションで構成されたパーサーが混乱する可能性のあるものすべて)。これがデフォルトの設定です。
  • すべて(QUOTE_ALL):型に関係なく、すべてを引用符で囲みます。
  • 非数値(QUOTE_NONNUMERIC):整数または浮動小数点数ではないすべてのフィールドを引用符で囲みます。リーダーで使用すると、引用符で囲まれていない入力フィールドは、浮動小数点数に変換されます。
  • なし(QUOTE_NONE):出力では何も引用符で囲みません。引用符は、ユーザーが指定したエスケープ文字とともに出力に含まれます。指定できるエスケープ文字は1つだけです。

デフォルトでは、引用符で囲まれたフィールド内の引用符は、二重にして書き込まれます("")。代わりにエスケープ文字を使って書き込むには、escape_quotes をオンにします。これはSparkと同じ動作です。エスケープ文字が \ の場合、フィールド say "hi" は "say \"hi\"" として書き込まれます。この設定はデフォルトでオフのため、既存のエクスポートは変わりません。

引用符文字を含む値は、デフォルトでは、それだけの理由で引用符で囲まれます。escapeQuotes をオフにしたSparkと同じように、そのような値を周囲に引用符を付けずに書き込むには、引用符文字を含む値を引用符で囲むをオフにします。区切り文字や改行を含む値は、引き続き引用符で囲まれます。このチェックボックスはデフォルトでオンです。オフにすると、ファイルはウェアハウスではなくPlaidCloudによって書き込まれます。

引用符文字を空にすると、すべての値がそのまま書き込まれます。何も引用符で囲まれず、何もエスケープされません。区切り文字や改行を含む値は、読み戻したときに複数のフィールドとして読み取られるため、データに含まれない区切り文字を選んでください。

このチェックボックスをオンにすると、テーブルのヘッダーが先頭行にエクスポートされます。オフにすると、エクスポートされるファイルにヘッダーは含まれません。

このチェックボックスをオンにすると、エクスポートされるファイルのヘッダーに、列のデータ型が含まれます。

最後に、Use Windows Compatible Line Endingsチェックボックスは、Windowsシステムとの互換性を確保するため、デフォルトでオンになっています。UNIX専用の環境で作業する場合を除き、この設定はオンのままにしておくことをお勧めします。

その他の CSV オプションのすでに存在するファイル(if_exists)は、ファイルがすでに存在する場合の動作を決めます。replace(デフォルト)は新しいファイルを書き込み、append はヘッダー行なしで既存ファイルの末尾に行を追加し、fail はステップを停止して何も書き込みません。追加では、ファイルをダウンロードして行を追加し、再びアップロードするため、2つの実行が同時に同じファイルに追加する場合は、最後に終了した実行が優先されます。append では、既存の行の下にヘッダーをもう一度書き込む(header_on_append)を選択すると、すでにある行の下にヘッダー行をもう一度書き込みます。

その他の CSV オプションには、次のフィールドもあります。

  • 行の並べ替え(sort_columns)— 書き込まれる行を、これらのソース列で並べ替えます。最初のキーが優先され、それぞれに列、昇順、NULL 値の設定があります。キー列は書き込まなくてもかまいません。NULL 値は、昇順では先頭、降順では末尾がデフォルトです。集計または重複排除とは併用できません。
  • 改行コード(line_ending)— すべての行の改行コードで、\n、\r\n、\r のいずれかです。Use Windows Compatible Line Endingsの代わりに使用します。
  • 引用符で囲む(quote_mode)— 引用符で囲む値を指定します。なし、常に、数値とブール値以外のすべての値、区切り文字を含む値のいずれかです。デフォルトでは、必要な場合に値が引用符で囲まれます。
  • 終了引用符(quote_end)— 開始の引用符と異なる場合の、終了の引用符です。
  • 値内の終了引用符(quote_replacement)— 引用符で囲まれた値の中にある終了引用符の代わりに書き込まれます。空のままにすると、引用符が二重になります。
  • 値内の区切り文字(delimiter_replacement)— 引用符で囲むをなしに設定した場合に、値の中の区切り文字の代わりに書き込まれます。
  • ファイルの先頭にバイト順マークを付ける(write_bom)— ファイルの先頭にバイト順マークを付けます。
  • Write decimal numbers as Java does(scientific_numbers)— 1,000万以上および0.001未満の10進数を、1.0E10 のような科学表記で書き込みます。
  • .csv や .tsv を付けずに、各ファイル名を指定どおりに書き込む(keep_file_extension)— 各ファイル名を、指定したとおりに書き込みます。
  • gzip の場合、.gz を付けずに指定した名前でファイルを保存する(exact_file_name)— gzip圧縮の場合に、指定した名前のままでファイルを保存します。
  • 小数点記号(decimal_separator)— 数値の小数点として書き込まれる文字です。
  • ヘッダーの前の行(comment_lines)— ヘッダーの前にそのまま書き込まれる行の、JSON配列です。

データマッパーの設定

Table Data Mapper

データマッパーは、ソースデータの列をターゲットのデータテーブルにマッピングするために使用します。

マッパーの検査と入力

ソースを検査メニューボタンを使うと、ソースからターゲットへ列をマッピングする方法が増えます。

  • 両方のマッピングテーブルを入力: ソースデータテーブルのすべての値をターゲットのデータテーブルに反映します。これがデフォルトです。
  • ソースマッピングテーブルのみを入力: ソースデータテーブルのすべての値のみをマッピングします。ソース列の構成が変わった既存のワークフローを修正する際に便利です。
  • ターゲットマッピングテーブルのみを入力: すべての値をターゲットのデータテーブルのみに反映します。

ソース列とターゲット列のオプションだけでは足りない場合は、次のようにいくつかの方法でターゲットのデータテーブルに列を追加できます。

  • すべてを反映は、すでに存在しているかどうかにかかわらず、すべてのソース列をターゲットのデータテーブルに挿入します。
  • 選択を反映は、選択したソース列のみを挿入します。
  • ターゲット側を右クリックして行を挿入を選択すると、現在選択している行の直上に行を挿入します。
  • ターゲット側を右クリックして行を追加を選択すると、ターゲットのデータテーブルの末尾(右端)に行を挿入します。

列の削除

ターゲットのデータテーブルから列を削除するには、対象の列を選択し、右クリックして削除を選択します。

一覧になくなったソース列

ターゲットの行がソース列として指定している列が、ソースデータテーブルの一覧にない場合があります。たとえば、ソースを再度検査した後などです。ステップがそのような行を自動的に削除することはありません。代わりに、列名が警告マーク ⚠ の後ろに赤色で表示され、その上にカーソルを置くと、その列がソース列にないことが示されます。ユニオンなど複数のテーブルを扱うステップでは、各テーブルがそれぞれのソース列に対してチェックされます。

定数、式、または件数 (NULLを含む) の集計を設定した行は、ステップがそのソース列を読み取らないため、フラグが付くことはありません。ソースデータテーブルに列が一覧表示されていない間(たとえば、ソースを初めて検査する前)は、何もフラグが付きません。

フラグが付いた行が残ったままステップを保存すると、古い列が見つかりましたダイアログに、該当する行が所属するタブまたはテーブルごとに表示され、次の3つの選択肢が提示されます。

  • すべて削除して保存 — フラグが付いた行を削除してから保存します。
  • このまま保存 — ステップをそのまま保存します。
  • キャンセル — 保存せずにステップに戻ります。

行を残したまま警告を解除するには、その列をソースデータテーブルに追加し直すか、ソースデータテーブルに一覧表示されている列を選択します。

列のデータ型

ターゲットの各列にはタイプがあります。ソースから反映した列はソース列のタイプを引き継ぎます。手動で追加した行はテキストから始まるため、実際に必要なタイプをタイプで設定します。合計や並べ替えを行う列には数値型や日付型が必要です。テキストはテキストとして並べ替えられ、合計されるためです。

タイプがまったく設定されていない列を含んだままステップを保存しても、ステップは実行されます。タイプは、ステップの開始時に、その列が読み取るソース列から判定されます。読み取り元がない場合はテキストとして扱われます。たとえば、SQL抽出ステップの列は、マッピングされたソースではなく、記述したクエリから決まります。また、同じ列名でタイプが一致しないソースが複数ある場合は、いずれかを推測せずテキストが使われます。推測が外れるとウェアハウスが拒否する変換が生じる可能性がありますが、どんな値もテキストには変換できるためです。

列がどうあるべきかを指定する方法は、引き続きタイプを自分で設定することです。未設定のままにすると、ソース列がたまたまそうであるタイプをそのまま受け入れることになります。

列の順序の変更

ターゲットのデータテーブルの列を並べ替えるには、対象の列を選択します。次のどちらかを使用できます。

  • 一括移動の矢印: 右上の矢印から目的の移動オプションを選択します
  • コンテキストメニュー: 右クリックして、先頭へ移動、上へ移動、下へ移動、末尾へ移動のいずれかを選択します。

結果を重複のないレコードのみに絞り込む

重複のないオプションのみを返すには、重複排除メニューオプションを選択します。ソースの各列にチェックボックスが表示されます。重複を排除したい列の横にあるチェックボックスをオンにすると、重複のない結果のみが返されます。

状況によっては、代わりに集計の使用を検討することをお勧めします。

重複排除では、最初に見つかった一意のレコードを残し、残りを破棄します。実行間で一貫性が必要な場合は、データに並べ替えを適用することをお勧めします。

集計とグループ化

結果を集計するには、集計メニューオプションを選択します。ターゲットのデータテーブルの各列に選択ボックスが表示されます。列ごとに適切な集計方法を選択します。

ソースを検査で列が入力される際、数値列は、名前が id、customer_id、Order No、CustomerKey のように識別子と読み取れる場合、テーブルでキーに設定されている場合、または結合でキーとして使用されている場合に、合計ではなくグループ化から始まります。

  • グループ化
  • 合計
  • 最小
  • 最大
  • 最初
  • 最後
  • 件数
  • 件数 (NULLを含む)
  • 平均
  • 標準偏差
  • 標本標準偏差
  • 母標準偏差
  • 分散
  • 標本分散
  • 母分散
  • 高度な非グループ化

式、クレンジング、定数などのデータマッパーの高度な使い方については、データマッパーの高度な使い方を参照してください。

Table Data Filters

柔軟性を最大限に高めるため、データフィルターはソースデータとターゲットデータの両方で使用できます。データセットが大きい場合は、ソース側で行を絞り込んでおくと、残りの処理を小さなデータセットに対して実行できるため、特に効果的です。

データのサブセットを選択

このフィルタータイプでは、指定した条件に基づいて、受信するソースデータをフィルター処理できます。

結果データにセカンダリフィルターを適用

このフィルタータイプでは、変換後の結果データに対して、指定した条件に基づくフィルターを適用できます。 変換後の結果にフィルターを適用できるため、複雑な計算、集計、ウィンドウ関数の結果に基づいて行を除外できます。

最終データテーブルのスライス(制限)

行のスライス機能では、範囲と開始位置に基づいて、結果セットの行数を制限できます。

フィルター構文

フィルター構文には Python SQLAlchemy を使用します。これは他の式と同じ構文です。

式の例と式関数については、式のセクションを参照してください。

例はまだありません…