Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
入門 Cloud Composer / 20190925
Search
momota
February 12, 2022
Technology
0
85
入門 Cloud Composer / 20190925
社内勉強会で発表した資料です
momota
February 12, 2022
Tweet
Share
More Decks by momota
See All by momota
医療データの利活用を支えるデータプラットフォーム / 20220517
momota
0
89
【輪読会】実践的データ基盤への処方箋 / 20220120
momota
1
54
Other Decks in Technology
See All in Technology
allow_retry と Arel.sql / allow_retry and Arel.sql
euglena1215
1
160
Grafana MCPサーバーによるAIエージェント経由でのGrafanaダッシュボード動的生成
hamadakoji
1
1.4k
落ちる 落ちるよ サーバーは落ちる
suehiromasatoshi
0
140
Kiroと学ぶコンテキストエンジニアリング
oikon48
6
9.3k
ヘブンバーンズレッドにおける、世界観を活かしたミニゲーム企画の作り方
gree_tech
PRO
0
570
Codeful Serverless / 一人運用でもやり抜く力
_kensh
6
320
AI開発ツールCreateがAnythingになったよ
tendasato
0
110
5年目から始める Vue3 サイト改善 #frontendo
tacck
PRO
3
200
Agile PBL at New Grads Trainings
kawaguti
PRO
1
320
Snowflakeの生成AI機能を活用したデータ分析アプリの作成 〜Cortex AnalystとCortex Searchの活用とStreamlitアプリでの利用〜
nayuts
1
380
Kubernetes における cgroup v2 でのOut-Of-Memory 問題の解決
pfn
PRO
0
460
複数サービスを支えるマルチテナント型Batch MLプラットフォーム
lycorptech_jp
PRO
0
220
Featured
See All Featured
Speed Design
sergeychernyshev
32
1.1k
YesSQL, Process and Tooling at Scale
rocio
173
14k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
KATA
mclloyd
32
14k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
910
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
111
20k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Transcript
入門 Cloud Composer Momota Sasaki
目次 • Cloud Composerについて ◦ managed service • Airflow について
◦ workflow ◦ DAG ◦ Operator ◦ code sample • Demo ◦ Cloud Composer実演 • Conclusion
Cloud Composer
Cloud Composer 一言で言うと、GCPで使えるAirflow(後述)のマネージドサービス マネージドサービス 平たく言うとベンダーが提供している、特定の機能に関する 運用管理がア ウトソースされたービス。 具体的なサービス名で言うと 「CloudSQL(RDBのマネージドサービス )」や「Cloud
Memorystore(Redisの マネージドサービス)」などが相当する。 Ref: https://cloud.google.com/composer/
Cloud Composer マネージドサービスなので必要な項目をポチポチ設定するだけで Airflowの環境が出来上がり、構成の変更なども管理画面上で完 結。 この管理コストの低さがマネージドサービスの売り。 あとはSLAが担保されている事など。 一方で、 • 管理対象ソフトウェアのバージョンはベンダー依存
• 自前ではないので好き勝手には弄れない • ベンダーロックイン などのデメリットもあるので天秤にかけて総合的に判断する。
Airflow
Airflow Airflow is a platform to programmatically author, schedule and
monitor workflows. プログラムでワークフローを作成・スケジューリング・監視する為のプラットフォーム。 つまり「ワークフロー」を「コード」で「管理」出来る Ref: https://airflow.apache.org/
リソース(資源)を体系的に組織化した反復可能な業務活動のパターンである。 ワークフローは、物質の加工、サービスの提供、情報の処理など、何らかの具体的意図をもって設計される。 …. 「Airflowにおけるworkflow」 の文脈で噛み砕くと、 「複数のタスクを用いて構築した一連の処理の流れの事」をいう Ref: https://ja.wikipedia.org/wiki/ワークフロー workflow Airflow
None
workflow
workflow DAG?
Directed Acyclic Graph(有向非巡回グラフ) グラフ理論における閉路のない有向グラフのこと。 ≒ 枝に向きが有り、サイクルがない。 AirflowではDAGの作成をもってワークフローを作成したことになる Ref https://ja.wikipedia.org/wiki/有向非巡回グラフ https://mathwords.net/dag
DAG Airflow
https://cloud.google.com/composer/docs/how-to/using/writing-dags
None
None
Operator?
• Airflowにおけるタスクを実行する為のテンプレみたいなもの。 • 色々な種類がある ◦ BashOperator, PythonOperator, BigQueryOperator, DataFlowJavaOperator etc
… ◦ 一覧は下のリンク先に このOperatorを用いてタスクを記述し、そのタスクに依存関係を持たせる事でフローの作成、つまり DAG(ワーク フロー)の作成が可能となる Ref https://github.com/apache/airflow/tree/master/airflow/operators https://github.com/apache/airflow/tree/master/airflow/gcp/operators Operator Airflow
sample code Airflow https://gist.github.com/momota10/c14e9c78ef248b7334914fdc37f24b87
Demo
Demo 1. cloud composer環境の作成 2. DAGファイルのupload 3. ワークフローの実行 w/ Airflow
GUIの体験
Conclusion
Conclustion 1. Cloud ComposerはAirflowのマネージドサービス 2. Airflowはワークフローの管理プラットフォーム 3. Airflowはタスクを記述して依存関係をもたせ、DAGを作成す る事が出来る 4.
入門 Cloud Composer といいつつ実態はほぼ入門 Airflow
Thank you