2021.06.15 コラム
【API・データ検証奮闘記】#9.BigQueryからTreasureDataへデータ移行やってみた
本コラムでは、APIやデータに関連する言語などを無邪気に触ってみた備忘録として、ライトに記載していきます!
「ちょっと違くない」「他にいい方法あるのに」といったご意見もあるかと思いますが、何卒お手柔らかに!!
<プロフィール>
富松 良介
2017年、株式会社サイバー・コミュニケーションズ(CCI)入社。Oracle Bluekai・Treasure Data等のDMPや、AWS・GCP等のPublicCloud領域を担務。2019年6月よりデータの利活用を推進するコンサルティング会社「株式会社DataCurrent」に出向し、事業会社の基盤構築・運用や自社ソリューション開発を担当。
●BigQueryからTreasureDataへデータ移行やってみた
ボス
BigQueryのデータをTreasureDataに格納して欲しい。BigQueryのロケーションはasia-northeast1だ。
モブ
!?
かしこまり!!
かしこまり!!
BigQueryからTreasureDataへデータ移行の手順から格納した結果までをご紹介致します。
●ステップ1. どうやってBigQueryからTreasureDataにデータ移行するか調査してみた
モブ1
プログラムつくる!?
モブ2
ツール契約する!?
意識高いモブ
BigQueryとの連携はリージョンも考慮しないとできないことがあるよね!
モブ
TreasureData Workflowで移行することにしよう!!
ボス
それでやってくれ。
●ステップ2. データ移行してみた
早速Workflowでデータを移行してみる。
BigQueryに格納している移行元データ

全てTreasureDataに格納する
timezone: Asia/Tokyo
_export:
td:
database: td_database
table: td_table
+import_data:
td_load>: import_bq_data.yml
database: ${td.database}
table: ${td.table}
in:
type: bigquery
project_id: your_project_id
auth_method: json_key
json_keyfile:
content: ${secret:gcp.credential}
import_type: query
query: |-
select *
FROM `your_project_id.your_dataset_id.your_table_id`
location: asia-northeast1
export_to_gcs: true
temp_dataset: your_temp_dataset_id
temp_table: your_temp_table_id
gcs_bucket: your_temp_bucket_name
gcs_path_prefix: your_filepath/your_file_prefix_
out:
type: td
mode: replace
exec: {}
filters:
- type: add_time
to_column: {name: time}
from_value: {mode: upload_time}
できた!!!
●ステップ3. 取得結果

意識高いモブ
ちなみに、公式ドキュメントではbqオペレーターはUSロケーションのみサポートと記載されているので、US以外のロケーションはtd_loadオペレータで対応だ!
Treasure Data : Reference for Google Cloud Platform OperatorsLimitation
This operator supports only US as location.
※2021年5月時点の情報
●最後に
弊社では、ツール間のデータ連携や設定方法はもちろん、その他データの取り扱いに関する課題に対してトータルで支援しております。
お困りごとございましたら、お気軽にお問い合わせください。
本データに関するお問い合わせは下記にて承ります。
株式会社DataCurrent
info@datacurrent.co.jp