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
80
入門 Cloud Composer / 20190925
社内勉強会で発表した資料です
momota
February 12, 2022
Tweet
Share
More Decks by momota
See All by momota
医療データの利活用を支えるデータプラットフォーム / 20220517
momota
0
86
【輪読会】実践的データ基盤への処方箋 / 20220120
momota
1
52
Other Decks in Technology
See All in Technology
家電アプリ共通PF "Linova" のAPI利用とPostman活用事例ご紹介
yukiogawa
0
130
AndroidXR 開発ツールごとの できることできないこと
donabe3
0
110
APIファーストで実現する運用性の高い IoT プラットフォーム: SORACOMのアプローチ
soracom
PRO
0
240
データ基盤の成長を加速させる:アイスタイルにおける挑戦と教訓
tsuda7
3
650
Ask! NIKKEIの運用基盤と改善に向けた取り組み / NIKKEI TECH TALK #30
kaitomajima
1
450
データの品質が低いと何が困るのか
kzykmyzw
6
1k
偶然 × 行動で人生の可能性を広げよう / Serendipity × Action: Discover Your Possibilities
ar_tama
1
740
Bounded Context: Problem or Solution?
ewolff
1
210
インフラをつくるとはどういうことなのか、 あるいはPlatform Engineeringについて
nwiizo
5
2.1k
現場の種を事業の芽にする - エンジニア主導のイノベーションを事業戦略に装着する方法 -
kzkmaeda
2
1.5k
SCSAから学ぶセキュリティ管理
masakamayama
0
140
The 5 Obstacles to High-Performing Teams
mdalmijn
0
270
Featured
See All Featured
Six Lessons from altMBA
skipperchong
27
3.6k
Automating Front-end Workflow
addyosmani
1367
200k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
How to Think Like a Performance Engineer
csswizardry
22
1.3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Practical Orchestrator
shlominoach
186
10k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Being A Developer After 40
akosma
89
590k
A Tale of Four Properties
chriscoyier
158
23k
Agile that works and the tools we love
rasmusluckow
328
21k
Bash Introduction
62gerente
610
210k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
540
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