注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)Airflow實(shí)戰(zhàn)

Airflow實(shí)戰(zhàn)

Airflow實(shí)戰(zhàn)

定 價(jià):¥79.80

作 者: 朱鵬程
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787115623775 出版時(shí)間: 2023-12-01 包裝: 平裝-膠訂
開(kāi)本: 128開(kāi) 頁(yè)數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)由淺入深地介紹了如何快速搭建Airflow集群,包括不同操作系統(tǒng)的快速搭建方法、Airflow的安裝方法、Airflow集群的部署方法、Airflow中的核心概念和其他重要概念、Airflow的架構(gòu)和組件、Airflow的系統(tǒng)管理、實(shí)踐經(jīng)驗(yàn)以及其他常見(jiàn)的調(diào)度系統(tǒng)。附錄提供了Docker和Kubernetes的簡(jiǎn)介。此外,本書(shū)還提供了在生產(chǎn)環(huán)境中使用Airflow的諸多實(shí)踐與經(jīng)驗(yàn),無(wú)論是對(duì)研發(fā)工程師創(chuàng)建工作流、排查工作流問(wèn)題,還是對(duì)運(yùn)維工程師維護(hù)集群運(yùn)轉(zhuǎn)、優(yōu)化集群性能,都有極其重要的借鑒價(jià)值。本書(shū)圖文并茂,理論翔實(shí),示例豐富,適合正在使用或者即將使用Airflow作為調(diào)度系統(tǒng)的研發(fā)工程師、Airflow平臺(tái)的運(yùn)維工程師以及對(duì)Airflow感興趣的讀者閱讀。

作者簡(jiǎn)介

  朱鵬程,本科畢業(yè)于復(fù)旦大學(xué)軟件工程系,現(xiàn)于億貝軟件工程(上海)有限公司擔(dān)任高級(jí)軟件工程師,負(fù)責(zé)Hadoop平臺(tái)的支持和維護(hù),同時(shí)負(fù)責(zé)開(kāi)源調(diào)度系統(tǒng)Airflow在全公司的推廣和落地。精通Java語(yǔ)言,對(duì)HBase、Elasticsearch、Airflow等項(xiàng)目有深入了解。

圖書(shū)目錄

第 1章 快速搭建Airflow集群 1
1.1 準(zhǔn)備工作 1
1.1.1 安裝kubectl 1
1.1.2 安裝Docker和kind 5
1.1.3 安裝Helm 7
1.2 創(chuàng)建Kubernetes集群 8
1.3 使用Helm部署Airflow集群 8
1.4 運(yùn)行示例 10
1.5 本章小結(jié) 11
第 2章 安裝Airflow 12
2.1 在非容器化環(huán)境中基于PyPI安裝Airflow 12
2.1.1 準(zhǔn)備工作 12
2.1.2 安裝Airflow 13
2.1.3 升級(jí)Airflow 14
2.2 在容器化環(huán)境中擴(kuò)展Airflow官方的鏡像 15
2.3 本章小結(jié) 15
第3章 部署Airflow集群 16
3.1 在非容器化生產(chǎn)環(huán)境中部署Airflow 16
3.1.1 基于Celery Executor的部署 16
3.1.2 基于Dask Executor的部署 23
3.2 在容器化生產(chǎn)環(huán)境中部署Airflow 28
3.2.1 基于Celery Executor的部署 28
3.2.2 基于Kubernetes Executor的部署 39
3.2.3 基于CeleryKubernetes Executor的部署 40
3.3 本章小結(jié) 41
第4章 DAG相關(guān)概念 42
4.1 DAG簡(jiǎn)介 42
4.1.1 構(gòu)造DAG 44
4.1.2 加載DAG 48
4.1.3 運(yùn)行DAG 49
4.2 Task 50
4.2.1 Task的類(lèi)型 51
4.2.2 TaskGroup 61
4.2.3 Task的超時(shí)處理 63
4.3 DAG Run和Task Instance 63
4.4 本章小結(jié) 70
第5章 其他概念 71
5.1 XCom 71
5.1.1 XCom的使用場(chǎng)景 71
5.1.2 如何使用XCom 71
5.2 Variable 73
5.2.1 通過(guò)Webserver UI配置Variable 74
5.2.2 通過(guò)環(huán)境變量配置Variable 75
5.2.3 通過(guò)其他方式配置Variable 76
5.3 Connection和Hook 76
5.3.1 基本概念 77
5.3.2 Connection的配置 77
5.3.3 Connection和Hook的使用 80
5.3.4 SSHHook源代碼分析 81
5.4 Pool 82
5.4.1 Pool的設(shè)置 82
5.4.2 Pool的使用 83
5.5 Priority Weight 84
5.6 Cluster Policy 84
5.6.1 Cluster Policy的使用場(chǎng)景和類(lèi)型 85
5.6.2 具體示例 85
5.7 Deferrable Operator和Trigger 86
5.7.1 使用Deferrable Operator和Trigger 86
5.7.2 從源代碼分析Deferrable Operator和Trigger 87
5.8 本章小結(jié) 89
第6章 架構(gòu)和組件 90
6.1 架構(gòu) 90
6.2 Scheduler 91
6.2.1 解析DAG文件 91
6.2.2 調(diào)度DAG和Task 92
6.2.3 運(yùn)行Task Instance 94
6.3 Webserver 97
6.3.1 UI 97
6.3.2 REST API 99
6.4 Triggerer 104
6.5 本章小結(jié) 104
第7章 系統(tǒng)管理 105
7.1 配置 105
7.1.1 如何管理配置 105
7.1.2 特殊的配置 107
7.1.3 配置的優(yōu)先級(jí) 108
7.2 安全 108
7.2.1 訪問(wèn)控制 109
7.2.2 API認(rèn)證 111
7.2.3 Webserver UI安全 113
7.2.4 數(shù)據(jù)安全 114
7.3 日志和監(jiān)控 115
7.3.1 日志和監(jiān)控的架構(gòu) 116
7.3.2 日志 116
7.3.3 監(jiān)控 117
7.4 插件 118
7.4.1 插件的安裝和加載 118
7.4.2 如何實(shí)現(xiàn)插件 119
7.5 模塊管理 126
7.5.1 如何添加Python模塊 126
7.5.2 如何排查問(wèn)題 126
7.6 CLI 127
7.6.1 全部命令 127
7.6.2 自動(dòng)補(bǔ)齊 129
7.7 時(shí)區(qū) 130
7.7.1 datetime對(duì)象與時(shí)區(qū) 130
7.7.2 Airflow是如何處理時(shí)區(qū)的 130
7.7.3 Webserver UI的時(shí)區(qū)顯示 131
7.8 本章小結(jié) 132
第8章 Airflow集群實(shí)踐 133
8.1 Executor調(diào)優(yōu) 133
8.1.1 Celery Executor 調(diào)優(yōu) 134
8.1.2 Kubernetes Executor調(diào)優(yōu) 141
8.1.3 Dask Executor調(diào)優(yōu) 141
8.2 高可用 142
8.2.1 高可用的Scheduler 142
8.2.2 高可用的Webserver 143
8.2.3 高可用的Triggerer 143
8.3 魯棒的數(shù)據(jù)庫(kù)訪問(wèn) 144
8.3.1 PostgreSQL優(yōu)化 144
8.3.2 MySQL優(yōu)化 144
8.3.3 數(shù)據(jù)庫(kù)通用優(yōu)化 144
8.4 簡(jiǎn)化DAG文件發(fā)布和解析 145
8.4.1 簡(jiǎn)化DAG文件發(fā)布 145
8.4.2 通過(guò)配置控制DAG文件解析的行為 145
8.5 用插件擴(kuò)展集群的能力 146
8.5.1 編寫(xiě)插件 146
8.5.2 安裝插件 152
8.5.3 測(cè)試插件 152
8.6 加強(qiáng)REST API的能力 155
8.7 其他 158
8.7.1 讓集群更安全 158
8.7.2 監(jiān)控必不可少 159
8.7.3 為DAG和Task添加說(shuō)明文檔 159
8.7.4 配置郵件通知 160
8.7.5 控制調(diào)度的并發(fā)度 161
8.8 本章小結(jié) 162
第9章 Airflow的新功能 163
9.1 Airflow 2.3版本的新功能 163
9.1.1 動(dòng)態(tài)Task映射 163
9.1.2 網(wǎng)格視圖 169
9.1.3 其他功能 173
9.2 Airflow 2.4版本的新功能 174
9.2.1 數(shù)據(jù)感知調(diào)度 174
9.2.2 其他功能 175
9.3 Airflow 2.5版本的新功能 175
9.4 本章小結(jié) 176
第 10章 其他調(diào)度系統(tǒng) 177
10.1 DolphinScheduler 177
10.1.1 DolphinScheduler的架構(gòu) 177
10.1.2 DolphinScheduler的特點(diǎn)和優(yōu)勢(shì) 179
10.1.3 DolphinScheduler與Airflow的對(duì)比 180
10.2 AWS Step Functions 180
10.2.1 AWS Step Functions的特點(diǎn)和優(yōu)勢(shì) 181
10.2.2 AWS Step Functions與Airflow的對(duì)比 181
10.3 Google Workflows 181
10.3.1 Google Workflows的特點(diǎn)和優(yōu)勢(shì) 182
10.3.2 Google Workflows與Airflow的對(duì)比 182
10.4 Azkaban 183
10.4.1 Azkaban的特點(diǎn)和優(yōu)勢(shì) 183
10.4.2 Azkaban與Airflow的對(duì)比 184
10.5 Kubeflow 184
10.5.1 Kubeflow的特點(diǎn)和優(yōu)勢(shì) 185
10.5.2 Kubeflow與Airflow的對(duì)比 185
10.6 本章小結(jié) 186
附錄A Docker簡(jiǎn)介 187
附錄B Kubernetes簡(jiǎn)介 197

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)