ETL數(shù)據(jù)整合與處理(Kettle)
定 價:49.8 元
- 作者:王雪松,張良均
- 出版時間:2021/2/1
- ISBN:9787115552204
- 出 版 社:人民郵電出版社
- 中圖法分類:TP274
- 頁碼:0
- 紙張:
- 版次:01
- 開本:16開
本書以Kettle實現(xiàn)ETL流程為目標,將ETL知識點與任務相結合,配套真實案例,深入淺出地介紹了ETL數(shù)據(jù)整合與處理的相關內容。全書共8章,第1章介紹了ETL概念和ETL工具,讓讀者在了解ETL相關的概念后,立刻上手ETL工具Kettle;第2~6章介紹了Kettle工具轉換相關的組件,包括源數(shù)據(jù)獲取、記錄處理、字段處理、高級轉換、遷移和裝載等內容,內容與ETL流程匹配,能幫助讀者快速掌握ETL;第7章介紹了Kettle工具任務的相關組件,能夠幫助讀者串聯(lián)不同的任務,以及實現(xiàn)調度的功能;第8章介紹了無人售貨機ETL項目,通過項目案例的形式,幫助讀者將所學知識融會貫通。
本書采用了以任務為導向的教學模式,按照解決實際任務的工作流程路線,逐步展開介紹相關的理論知識點,推導生成可行的解決方案,最后落實在任務實現(xiàn)環(huán)節(jié)。
書中案例全部源于企業(yè)真實項目,可操作性強,引導讀者融會貫通,并提供源代碼等相關學習資源,幫助讀者快速掌握ETL數(shù)據(jù)整合與處理相關技能。
王雪松,佛山職業(yè)技術學院,計算機應用專業(yè),教授。主編規(guī)劃教材6部,發(fā)表專業(yè)學術論文30余篇。
張良均,廣東泰迪智能科技股份有限公司董事長,高級信息系統(tǒng)項目管理師,廣東省工業(yè)與應用數(shù)學學會常務理事,中國信訪大數(shù)據(jù)學術與應用研究聯(lián)盟副理事長,“泰迪杯”數(shù)據(jù)挖掘挑戰(zhàn)賽發(fā)起人。華南師范大學、中南財經(jīng)政法大學、廣東工業(yè)大學、西安理工大學、廣西科技大學、重慶交通大學、湖北工程學院等兼職教授或兼職碩導。近5年,在國內外重要學術刊物上發(fā)表論文10余篇;主導編寫圖書專著26部,承擔國家級項目1項,省部級項目6項。獲得SAS、SPSS數(shù)據(jù)挖掘認證及Hadoop開發(fā)工程師證書,具有信訪、電力、電信、銀行、制造企業(yè)、電子商務和電子政務的項目經(jīng)驗和行業(yè)背景。
第 1章 開啟ETL之旅 1
任務1.1 認識ETL 1
1.1.1 了解ETL 1
1.1.2 選擇ETL工具 4
任務1.2 配置Kettle運行環(huán)境 7
1.2.1 安裝JDK 8
1.2.2 安裝MySQL數(shù)據(jù)庫 9
1.2.3 配置Kettle 10
任務1.3 熟悉Kettle基本操作 11
1.3.1 認識Kettle界面 11
1.3.2 新建轉換與任務 17
1.3.3 運行與查看結果面板 20
小結 22
課后習題 22
第 2章 源數(shù)據(jù)獲取 23
任務2.1 創(chuàng)建數(shù)據(jù)庫連接 23
2.1.1 建立數(shù)據(jù)庫連接 23
2.1.2 設置參數(shù) 24
2.1.3 測試和瀏覽數(shù)據(jù)庫連接結果 26
2.1.4 建立/停止共享數(shù)據(jù)庫連接 27
任務2.2 表輸入 28
2.2.1 建立表輸入轉換工程 28
2.2.2 設置參數(shù) 29
2.2.3 預覽結果數(shù)據(jù) 32
任務2.3 CSV文件輸入 32
2.3.1 建立CSV文件輸入轉換工程 32
2.3.2 設置參數(shù) 33
2.3.3 預覽結果數(shù)據(jù) 35
任務2.4 Excel輸入 36
2.4.1 建立Excel輸入轉換工程 36
2.4.2 設置參數(shù) 37
2.4.3 預覽結果數(shù)據(jù) 44
任務2.5 生成記錄 44
2.5.1 建立生成記錄轉換工程 45
2.5.2 設置參數(shù) 45
2.5.3 預覽結果數(shù)據(jù) 47
任務2.6 生成隨機數(shù) 47
2.6.1 建立生成隨機數(shù)轉換工程 47
2.6.2 設置參數(shù) 48
2.6.3 預覽結果數(shù)據(jù) 49
任務2.7 獲取系統(tǒng)信息 49
2.7.1 建立獲取系統(tǒng)信息轉換工程 50
2.7.2 設置參數(shù) 50
2.7.3 預覽結果數(shù)據(jù) 51
小結 51
課后習題 52
第3章 記錄處理 53
任務3.1 排序記錄 53
3.1.1 建立排序記錄轉換工程 53
3.1.2 設置參數(shù) 54
3.1.3 預覽結果數(shù)據(jù) 56
任務3.2 去除重復記錄 56
3.2.1 建立去除重復記錄轉換工程 56
3.2.2 設置參數(shù) 57
3.2.3 預覽結果數(shù)據(jù) 59
任務3.3 替換NULL值 59
3.3.1 建立替換NULL值轉換工程 59
3.3.2 設置參數(shù) 60
3.3.3 預覽結果數(shù)據(jù) 62
任務3.4 過濾記錄 62
3.4.1 建立過濾記錄轉換工程 62
3.4.2 設置參數(shù) 63
3.4.3 預覽結果數(shù)據(jù) 67
任務3.5 值映射 67
3.5.1 建立值映射轉換工程 67
3.5.2 設置參數(shù) 68
3.5.3 預覽結果數(shù)據(jù) 69
任務3.6 字符串替換 70
3.6.1 建立字符串替換轉換工程 70
3.6.2 設置參數(shù) 70
3.6.3 預覽結果數(shù)據(jù) 72
任務3.7 字符串操作 72
3.7.1 建立字符串操作轉換工程 72
3.7.2 設置參數(shù) 73
3.7.3 預覽結果數(shù)據(jù) 74
任務3.8 分組 74
3.8.1 建立分組轉換工程 75
3.8.2 設置參數(shù) 76
3.8.3 預覽結果數(shù)據(jù) 78
小結 78
課后習題 79
第4章 字段處理 80
任務4.1 字段選擇 80
4.1.1 建立字段選擇轉換工程 80
4.1.2 設置參數(shù) 81
4.1.3 預覽結果數(shù)據(jù) 85
任務4.2 增加常量 86
4.2.1 建立增加常量轉換工程 86
4.2.2 設置參數(shù) 87
4.2.3 預覽結果數(shù)據(jù) 88
任務4.3 將字段值設置為常量 88
4.3.1 建立將字段值設置為常量轉換工程 89
4.3.2 設置參數(shù) 89
4.3.3 預覽結果數(shù)據(jù) 90
任務4.4 剪切字符串 91
4.4.1 建立剪切字符串轉換工程 91
4.4.2 設置參數(shù) 92
4.4.3 預覽結果數(shù)據(jù) 93
任務4.5 拆分字段 93
4.5.1 建立拆分字段轉換工程 93
4.5.2 設置參數(shù) 94
4.5.3 預覽結果數(shù)據(jù) 96
任務4.6 數(shù)值范圍 96
4.6.1 建立數(shù)值范圍轉換工程 97
4.6.2 設置參數(shù) 97
4.6.3 預覽結果數(shù)據(jù) 99
任務4.7 計算器 99
4.7.1 建立計算器轉換工程 99
4.7.2 設置參數(shù) 100
4.7.3 預覽結果數(shù)據(jù) 101
任務4.8 增加序列 102
4.8.1 建立增加序列轉換工程 102
4.8.2 設置參數(shù) 103
4.8.3 預覽結果數(shù)據(jù) 105
小結 105
課后習題 105
第5章 高級轉換 107
任務5.1 記錄集連接 107
5.1.1 建立記錄集連接轉換工程 107
5.1.2 設置參數(shù) 109
5.1.3 預覽結果數(shù)據(jù) 110
任務5.2 多路數(shù)據(jù)合并連接 111
5.2.1 建立多路數(shù)據(jù)合并連接轉換工程 111
5.2.2 設置參數(shù) 112
5.2.3 預覽結果數(shù)據(jù) 114
任務5.3 單變量統(tǒng)計 115
5.3.1 建立單變量統(tǒng)計轉換工程 115
5.3.2 設置參數(shù) 116
5.3.3 預覽結果數(shù)據(jù) 117
任務5.4 公式 118
5.4.1 建立公式轉換工程 118
5.4.2 設置參數(shù) 119
5.4.3 預覽結果數(shù)據(jù) 120
任務5.5 利用Janino計算Java表達式 120
5.5.1 建立利用Janino計算Java表達式轉換工程 121
5.5.2 設置參數(shù) 122
5.5.3 預覽結果數(shù)據(jù) 123
任務5.6 JavaScript代碼 123
5.6.1 建立JavaScript代碼轉換工程 123
5.6.2 設置參數(shù) 124
5.6.3 預覽結果數(shù)據(jù) 127
任務5.7 設置變量 128
5.7.1 建立設置變量轉換工程 128
5.7.2 設置參數(shù) 130
5.7.3 預覽結果數(shù)據(jù) 131
任務5.8 獲取變量 131
5.8.1 建立獲取變量轉換工程 131
5.8.2 設置參數(shù) 132
5.8.3 預覽結果數(shù)據(jù) 133
小結 133
課后習題 133
第6章 遷移和裝載 135
任務6.1 表輸出 135
6.1.1 建立表輸出轉換工程 135
6.1.2 設置參數(shù) 136
6.1.3 預覽結果數(shù)據(jù) 139
任務6.2 插入/更新 139
6.2.1 建立插入/更新轉換工程 140
6.2.2 設置參數(shù) 140
6.2.3 預覽結果數(shù)據(jù) 143
任務6.3 Excel輸出 143
6.3.1 建立Excel輸出轉換工程 143
6.3.2 設置參數(shù) 143
6.3.3 預覽結果數(shù)據(jù) 148
任務6.4 文本文件輸出 148
6.4.1 建立文本文件輸出轉換工程 148
6.4.2 設置參數(shù) 149
6.4.3 預覽結果數(shù)據(jù) 153
任務6.5 SQL文件輸出 153
6.5.1 建立SQL文件輸出轉換工程 153
6.5.2 設置參數(shù) 153
6.5.3 預覽結果數(shù)據(jù) 156
小結 156
課后習題 157
第7章 任務 158
任務7.1 開始 158
7.1.1 建立開始任務工程 158
7.1.2 設置參數(shù) 159
7.1.3 運行任務 160
任務7.2 轉換 161
7.2.1 建立轉換任務工程 162
7.2.2 設置參數(shù) 162
7.2.3 運行任務 166
任務7.3 添加文件到結果文件中 167
7.3.1 建立添加文件到結果文件中任務工程 167
7.3.2 設置參數(shù) 167
7.3.3 運行任務 168
任務7.4 發(fā)送郵件 169
7.4.1 建立發(fā)送郵件任務工程 169
7.4.2 設置參數(shù) 170
7.4.3 運行任務 174
任務7.5 成功 175
7.5.1 建立成功任務 175
7.5.2 設置參數(shù) 176
7.5.3 運行任務 176
任務7.6 檢查表是否存在 177
7.6.1 建立檢查表是否存在任務工程 177
7.6.2 設置參數(shù) 177
7.6.3 運行任務 178
任務7.7 SQL 179
7.7.1 建立SQL任務工程 179
7.7.2 設置參數(shù) 179
7.7.3 運行任務 180
任務7.8 檢查列是否存在 181
7.8.1 建立檢查列是否存在任務工程 181
7.8.2 設置參數(shù) 181
7.8.3 運行任務 183
任務7.9 檢查一個文件是否存在 183
7.9.1 建立檢查一個文件是否存在任務工程 183
7.9.2 設置參數(shù) 184
7.9.3 運行任務 184
任務7.10 檢查多個文件是否存在 185
7.10.1 建立檢查多個文件是否存在任務工程 185
7.10.2 設置參數(shù) 185
7.10.3 運行任務 186
小結 187
課后習題 187
第8章 無人售貨機項目實戰(zhàn) 188
任務8.1 了解無人售貨機項目背景與目標 188
8.1.1 了解項目背景 188
8.1.2 熟悉項目目標 189
8.1.3 熟悉數(shù)據(jù)字段 189
任務8.2 分組聚合客戶訂單 192
8.2.1 分析任務數(shù)據(jù)需求 192
8.2.2 熟悉任務流程 193
8.2.3 實現(xiàn)聚合客戶訂單 193
任務8.3 計算各商品銷售金額 197
8.3.1 分析任務數(shù)據(jù)需求 197
8.3.2 熟悉任務流程 197
8.3.3 實現(xiàn)各商品銷售金額計算 198
任務8.4 統(tǒng)計各售貨機日銷售金額 202
8.4.1 分析任務數(shù)據(jù)需求 202
8.4.2 熟悉任務流程 202
8.4.3 實現(xiàn)各售貨機銷售金額統(tǒng)計 203
任務8.5 整理各售貨機銷售情況 207
8.5.1 分析任務數(shù)據(jù)需求 208
8.5.2 熟悉任務流程 208
8.5.3 實現(xiàn)各售貨機銷售情況整理 209
小結 216
課后習題 216