《數據工程師的雲計算技術》是2021年機械工業出版社出版的圖書。
基本介紹
- 中文名:數據工程師的雲計算技術
- 出版時間:2021年9月
- 出版社:機械工業出版社
- ISBN:9787111690719
內容簡介,圖書目錄,
內容簡介
本書以項目為基礎,全面介紹如何將雲計算套用於數據分析,內容涵蓋大數據和機器學習。首先討論異步技術並介紹雲計算基礎知識以及虛擬化、容器化和彈性化,然後討論分散式計算、無伺服器ETL技術和可管理的機器學習系統,還展示了數據科學案例研究,作者還分享了一些見解以及對職業化規劃的建議。本書包含大量的實踐作業,使用了豐富的資源,包括Python在雲平台(谷歌、AWS、Azure)上的互動式實驗室。
圖書目錄
前 言
第1章 開始 1
1.1 有效的異步技術討論 1
1.1.1 可複製代碼 1
1.1.2 音頻、視頻和圖像 5
1.1.3 製作一次,重複使用多次 6
1.1.4 技術討論作為一種主動學習的形式 6
1.1.5 結論 6
1.1.6 練習:創造技術性帖子 6
1.2 有效的異步技術項目管理 7
1.2.1 為什麼軟體項目失敗了 7
1.2.2 如何按時交付高質量的軟體 7
1.2.3 其他高失敗率的例子 9
1.2.4 練習:為終項目創建一個技術項目計畫 10
1.3 上AWS、GCP和Azure雲 10
1.3.1 AWS 10
1.3.2 微軟的Azure 12
1.3.3 GCP 16
1.3.4 練習:設定CI雲 18
1.3.5 練習:上雲實驗室 19
1.3.6 高級案例研究:使用Docker和CircleCI從零開始建立雲環境持續集成 19
1.3.7 使用Docker容器來擴展Makefile的使用 23
1.4 總結 24
1.5 其他相關資源 25
第2章 雲計算基礎 26
2.1 為什麼應該考慮使用基於雲的開發環境 26
2.2 雲計算概述 27
2.2.1 雲計算的經濟效益 27
2.2.2 雲服務模型:SaaS、PaaS、IaaS、MaaS、Serverless 27
2.3 PaaS持續交付 29
2.3.1 谷歌套用引擎和雲構建持續交付 29
2.3.2 建立多種類型的網站 36
2.3.3 練習:創建四個網站 39
2.4 基礎設施即代碼 39
2.5 什麼是持續交付和持續部署 40
2.6 從零開始持續交付Hugo靜態站點 40
2.7 總結 60
第3章 虛擬化、容器化和彈性化 61
3.1 彈性資源 61
3.2 容器:Docker 63
3.2.1 Docker入門 63
3.2.2 容器的真實例子 65
3.2.3 運行Docker容器 66
3.2.4 容器註冊表 69
3.2.5 在AWS Cloud9上從零開始構建容器化套用 69
3.2.6 練習:在AWS Cloud9中構建Hello World容器 72
3.3 Kubernetes 72
3.3.1 安裝Kubernetes 73
3.3.2 Kubernetes概述 73
3.3.3 自動伸縮的Kubernetes 77
3.3.4 雲中的Kubernetes 78
3.3.5 混合雲和多雲Kubernetes 78
3.3.6 Kubernetes總結 79
3.4 運行微服務概述 79
3.4.1 創建有效的報警 82
3.4.2 Prometheus入門 84
3.4.3 使用Flask創建Locust負載測試 86
3.4.4 微服務的無伺服器實踐、災難恢復和備份 88
3.5 練習:運行Kubernetes Engine 89
3.6 總結 90
第4章 分散式計算的挑戰和機遇 91
4.1 終一致性 91
4.2 CAP定理 92
4.3 阿姆達爾定律 92
4.4 彈性 93
4.5 高可用 93
4.6 摩爾定律的終結 94
4.7 ASIC:GPU、TPU、FPGA 95
4.7.1 ASIC、CPU與GPU 95
4.7.2 使用GPU和JIT 97
4.7.3 練習:GPU編程 100
4.8 總結 100
第5章 雲存儲 101
5.1 雲存儲類型 101
5.2 數據治理 103
5.3 雲資料庫 104
5.4 鍵-值資料庫 105
5.5 圖形資料庫 106
5.5.1 為什麼不是關係型資料庫而是圖形資料庫 107
5.5.2 AWS Neptune 107
5.5.3 Neo4j 108
5.5.4 大數據的三個“V” 116
5.6 批處理數據與流數據和機器學習 117
5.7 雲數據倉庫 118
5.8 GCP BigQuery 118
5.9 AWS Redshift 123
5.9.1 Redshift工作流中的關鍵操作 123
5.9.2 AWS Redshift總結 124
5.10 總結 124
第6章 無伺服器ETL技術 125
6.1 AWS Lambda 125
6.2 使用AWS Cloud9開發AWS Lambda函式 128
6.2.1 構建一個API 128
6.2.2 構建一個無伺服器數據工程管道 129
6.2.3 使用AWS Lambda在AWS S3桶上實現計算機視覺 130
6.2.4 練習:AWS Lambda Step Function 130
6.3 函式即服務 131
6.4 AWS Lambda的Chalice框架 132
6.5 谷歌雲函式 133
6.6 Azure Flask無伺服器機器學習 141
6.7 Cloud ETL 142
6.8 使用ETL從零開始構建社交網路的現實問題 143
6.8.1 冷啟動問題 143
6.8.2 從零開始構建社交網路機器學習管道 144
6.8.3 案例研究:如何構建一個新聞提要 146
6.9 總結 146
第7章 可管理的機器學習系統 147
7.1 Jupyter Notebook工作流 147
7.2 AWS Sagemaker概述 152
7.2.1 AWS Sagemaker彈性架構 152
7.2.2 練習:使用Sagemaker 152
7.3 Azure ML Studio概述 154
7.4 谷歌AutoML計算機視覺 154
7.5 總結 155
第8章 數據科學案例研究和項目 156
第9章 隨筆 163
9.1 為什麼在2029年前將不會有數據科學這個職位 163
9.2 利用教育的拆分 165
9.3 垂直集成的AI棧將如何影響IT機構 168
9.4 notebook來了 170
9.5 雲原生機器學習和AI 172
9.6 到2021年會培訓100萬人 174
9.6.1 高等教育的現狀將會被打破 175
9.6.2 地方就業市場將會被打破 179
9.6.3 招聘流