Upgrade to Pro — share decks privately, control downloads, hide ads and more …

小さく始めるデータ基盤

Reiji Kainuma
February 07, 2022

 小さく始めるデータ基盤

Reiji Kainuma

February 07, 2022
Tweet

More Decks by Reiji Kainuma

Other Decks in Programming

Transcript

  1. 自己紹介 @reizist Web Backend / Infra / Data (Infra) R

    なんとかという会社で データエンジニア 最近CloudComposer2 と戯れています 2 / 18
  2. Q. どうやってデータを集める? 真っ先にtrocco をtrial で導入し検討した あらゆるデータソースに対応していて要件(DB, SaaS からのデー タ取り込み) は満たせた

    が要件に対してはコストが見合わなかったので断念 Embulk on CloudRun を採用 コンテナベースなので安心 8 / 18
  3. Amazon S3 Amazon RDS Cloud Build Cloud Storage db-importer Cloud

    Run Push AWS Step Functions workflow rds-exporter Create DBClusterSnapshot StartExportTask EventBridge run-embulk Cloud Run BigQuery DB SaaS ClientLog 9 / 18
  4. DB Aurora instance から個人情報をすべてマスク済のsnapshot を作成 snapshot からS3 にParquet でexport S3

    に DB のデータがリスクのない状態で配置 CloudRun 上で実行されるbq load によりS3 のParquet をBQ にimport 10 / 18
  5. SaaS Embulk on CloudRun CloudRun のroot endpoint にアクセスすると実装済のすべての embulk config

    をsequential にembulk run する 環境変数によって個別に実行可能 SaaS 毎のendpoint を作る等自由に拡張可能 11 / 18
  6. ClientLog Google Analytics 必要な箇所で trackEvent を呼ぶだけでBQ にほぼリアルタイムにロ ギングされる export const

    EventTracker = { trackEvent: function (event_name: string, payload: any) { try { gtag('event', event_name, payload) 12 / 18