HOW TO TD(User Engagement)Treasure Data User Engagement

クエリの実行結果をBox上に日次で出力させる方法

ホーム » クエリの実行結果をBox上に日次で出力させる方法

データマネジメントチームの井口 奈津美です。

この記事では、Workflow上で実行しているクエリの実行結果を、Box上の任意の場所に日次で出力させる実装方法をご紹介します。出力形式はCSV形式とします。Treasure Data CDPにはBoxとのコネクタがすでに用意されているため、GUIで設定をしたのちWorkflowに設定事項を記述すれば実現可能です。

事前準備

  1. Treasure Data CDP管理画面からBoxへのConnectionを作成します。
  2. Treasure Data CDP管理画面 > CatalogからBoxを選択 > Create Authenticationをクリック > Click hereをクリック > BoxのページにてGrant access to Boxをクリック

  3. Treasure Data CDP管理画面からBoxへのAuthenticationを作成します。
  4. Treasure Data CDP管理画面 > CatalogからBoxを選択 > Create Authenticationをクリック > 接続先を選択しContinueをクリック > Authenticationの名称を記入しDoneをクリック

  5. 出力先のBox idを調べます。URLの folder/ の後ろの数字です。

以上で事前準備は終わりです。それでは実際にWorkflowを書いていきましょう。

日次で実行するメインのdigファイルから、下記のdigファイルを呼び出しているという構造です。今回やりたいことは、8行目のクエリ”queries/select_goods.sql”の実行結果をCSV形式でBoxに日次で出力することです。9〜14行目のオプションについて、順に解説してまいります。

timezone: Asia/Tokyo

_export:
  td:
    database: sandbox_iguchi

+test:
  td>: queries/select_goods.sql
  result_connection: test_iguchi_box
  result_settings:
    folder_id: 123456789
    file_ext: ".csv"
    file_name: select_goods_${moment(session_date).format("YYYYMMDD")}
    mode: new_file
  1. result_connection: Treasure Data CDP管理画面で作成したConnectionの名称
  2. folder_id: 出力先のBox id
  3. file_ext: 出力するファイルの拡張子。今回はCSV形式のため、”.csv”としています。
  4. file_name: 出力するファイルの名称を指定します。この例ではmoment.jsを使い、”select_goods_20220104”のようにファイル名に日付が付与される仕組みにしています。
  5. mode: new_file (固定)

これで実装は完了です。いかがでしたでしょうか。
この記事が少しでもお役に立てば幸いです。

井口 奈津美

Customer Data Managementチーム

独立系SIerに入社し、SEとして業務システムの運用保守、既存システムの再構築を経験。 その後、農業のデータ分析を行うスタートアップへ転職。自社のデータ分析基盤を構築するためのシステム要件定義を担当。農林水産省のスマート農業実証事業が立ち上がるとプロジェクト管理業務も行った。 2021年にトレジャーデータに参画。データマネジメントチームにて、TREASURE DATA CDPの構築や施策のデータ集計等、データ基盤の設計・開発・運用支援に携わる。

得意領域 : データ活用・分析支援

Back to top button