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
78
入門 Cloud Composer / 20190925
社内勉強会で発表した資料です
momota
February 12, 2022
Tweet
Share
More Decks by momota
See All by momota
医療データの利活用を支えるデータプラットフォーム / 20220517
momota
0
82
【輪読会】実践的データ基盤への処方箋 / 20220120
momota
1
51
Other Decks in Technology
See All in Technology
Engineer Career Talk
lycorp_recruit_jp
0
210
Is Go A Good Language to Build Compilers?
kennethanceyer
0
110
Chasing the White Whale of Open Source - ROI
mrbobbytables
0
150
SDNという名のデータプレーンプログラミングの歴史
ebiken
PRO
2
260
累計2500万着電を支える大規模 電話自動応答サービスのアーキテクチャ / Architecture of a Large-Scale Automated Phone Response Service Supporting 25 Million Cumulative Calls
ymachida
3
2.4k
Windows Server 2025 Pay as you Go ライセンスを試す
murachiakira
0
110
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
190
JAWS UG 青森(弘前)クラウド・AWS入門
hiragahh
0
150
SkiaとImpellerについて
moriya0130
0
200
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
3
390
ヤプリのデータカタログ整備 1年間の歩み / Progress of Building a Data Catalog at Yappli
yamamotoyuta
3
160
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
3
730
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Fireside Chat
paigeccino
34
3k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Making Projects Easy
brettharned
115
5.9k
BBQ
matthewcrist
85
9.3k
A Modern Web Designer's Workflow
chriscoyier
693
190k
GitHub's CSS Performance
jonrohan
1030
460k
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