Slide 1

Slide 1 text

システム/データ品質保証のための Airflow 活用法 2022/10/20 hankehly

Slide 2

Slide 2 text

自己紹介 ● Hank Ehly(名:ハンク 姓:イーリー) ● ENECHANGE株式会社 ● qiita.com/hankehly ● github.com/hankehly ● connpass.com/user/hankehly

Slide 3

Slide 3 text

アジェンダ 1. Airflowとは 2. QAにどう役立てる

Slide 4

Slide 4 text

● ワークフロー管理システム(作成・実行・監視) ● Airbnb、メルカリ、楽天、Tesla、Twitter、等々 Airflowとは ● Python

Slide 5

Slide 5 text

ワークフロー名 実行頻度 成功/失敗回数

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

AirflowをQAにどう役立てるか 1. データパイプラインにおけるデータの品質担保 ② 結果の形式 は問題ないか? ① SQL実行 ③ 必要なデータは 入っているか? ./01_run_sql.sh ./02_check_data.sh ./03_send_email.sh … 品質保証しにくいパイプライン

Slide 9

Slide 9 text

AirflowをQAにどう役立てるか 2. 継続的な End-To-End (E2E) テストの実行 ● 既存テストスクリプトそのまま利用できる(コンテナ/Python/Bash) ● パラレル実行 ● REST APIから実行可 ● 通知機能(Slack、Eメール等) ● 途中から再実行 ● QAチームに実行権限を付与できる 開始 Seleniumで 画面操作 成功/失敗判定 Slack エラー通知 スクリーンショットを Google Driveに転送 Asanaチケット起票 NG OK Slack 成功通知

Slide 10

Slide 10 text

AirflowをQAにどう役立てるか 3. システムモニタリング ● 定期的にシステムの “正確さ” およびデータの精度/鮮度を確認する ● 結果を通知する /ping は[200 OK]を 返している? 例)5分ごとに、サービス X,Y,Z にHTTPリクエスト送信 データ更新 されている? 例)毎週月曜日8時にデータの最終更新日を確認する

Slide 11

Slide 11 text

ワークショップ 10/29(土)にAirflowのハンズオンワークショップを開催予定 << Airflowのことが分かる記事