ITお絵かき修行

3歩歩いても忘れないために

TreasureDataのデータをTreasureWorkflowを利用してS3へエクスポートする

TreasureData内のテーブルデータをTreasureWorkflow(≒DigDag)を利用してS3へエクスポートする際、若干ハマったので備忘録として残します。

■したいこと
TreasureDataに保管しているデータを、S3へ出力する
⇒本記事の内容はtdオペレータ(td table:exportコマンド)を使うのではなく、td_table_exportオペレータを使用してデータを出力する場合です。
記事作成時点ではバージニアリージョンでしか利用できないので注意
東京リージョンでも利用できるようになったようです(2021/06/09追記)
docs.treasuredata.com
github.com


■エクスポートまでの流れ
1.TresureWorkflow定義ファイル作成(.digファイル作成)
https://docs.digdag.io/operators/td_table_export.html

+step1:
  td_table_export>:
  database: mydb
  table: mytable
  file_format: jsonl.gz
  from: 2016-01-01 00:00:00 +0800
  to:   2016-02-01 00:00:00 +0800
  s3_bucket: my_backup_backet
  s3_path_prefix: mydb/mytable

保管先のS3バケットが「SSE-KMS」の場合は下記オプションも追加する必要があります。(SSE-Cの場合は不明)SSE-S3の場合は不要でした。

  use_sse: true
  sse_algorithm: AES256

2.1.の定義ファイルを、td wf pushコマンドを使用してTreasureDataに登録します。

3.td wf secretsコマンドを使用してAWS接続用のsecretを設定します。
⇒アクセスキーIDとシークレットアクセスキーを指定する。同じ.digファイル内でtdコマンドでresult_connectionオプションを利用してデータをエクスポートしている場合は、そちらの設定が優先されるので注意
Run a Query and Download Results - Product Documentation - Treasure Data Product Documentation


4.td wf runコマンドを使用してTreasureWorkflowを実行します。

■総括
わからないことがあったらTreasureDataのチャットですぐに聞きましょう。
⇒即レスしていただけるので、ネットを漁る前に聞いた方がいいです。
f:id:hhhhhskw:20210417155715p:plain
Contacting Technical Support - Product Documentation - Treasure Data Product Documentation