劍指大數據——企業(yè)級數據倉庫項目實戰(zhàn)(在線教育版)
定 價:105 元
叢書名:程序員硬核技術叢書
- 作者:尚硅谷教育
- 出版時間:2023/8/1
- ISBN:9787121459375
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP311.13
- 頁碼:360
- 紙張:
- 版次:01
- 開本:16開
本書從需求規(guī)劃、需求實現到可視化展示等,遵循項目開發(fā)的主要流程,全景介紹了在線教育行業(yè)離線數據倉庫的搭建過程。在整個數據倉庫的搭建過程中,介紹了主要組件的安裝部署、需求實現的具體思路、問題的解決方案等,并在其中穿插了許多大數據和數據倉庫相關的理論知識,包括數據倉庫的概念介紹、在線教育業(yè)務概述、數據倉庫理論介紹和數據倉庫建模等。本書的第1章至第3章是項目前期準備階段,主要為讀者介紹了數據倉庫的概念、應用場景和搭建需求等,并初步搭建了數據倉庫項目所需的基本環(huán)境;第4章至第6章是數據倉庫搭建的核心部分,詳細講解了數據倉庫建模理論和數據從采集到分層搭建的全過程;第7章和第8章介紹了全流程調度和指標可視化。本書適合具有一定編程基礎的讀者學習。通過閱讀本書,讀者可以快速地了解數據倉庫,全面掌握數據倉庫的相關技術。
尚硅谷教育是一家專業(yè)的IT教育培訓機構,開設了JavaEE、大數據、HTML5前端等多門學科,在互聯網上發(fā)布的JavaEE、大數據、HTML5前端、區(qū)塊鏈、C語言、Python等技術視頻教程廣受贊譽。
第1章 大數據與數據倉庫概論 1
1.1 什么是數據倉庫 1
1.2 數據倉庫的演進歷史 2
1.3 數據倉庫技術 4
1.4 數據倉庫基本架構 5
1.5 數據庫和數據倉庫的區(qū)別 8
1.6 學前導讀 9
1.6.1 學習的基礎要求 9
1.6.2 你將學到什么 9
1.7 本章總結 10
第2章 項目需求描述 11
2.1 前期調研 11
2.2 項目架構分析 12
2.2.1 在線教育數據倉庫產品描述 12
2.2.2 系統功能結構 13
2.2.3 系統流程圖 13
2.3 項目業(yè)務概述 14
2.3.1 采集模塊業(yè)務描述 14
2.3.2 數據倉庫需求業(yè)務描述 15
2.3.3 數據可視化業(yè)務描述 16
2.4 系統運行環(huán)境 17
2.4.1 硬件環(huán)境 17
2.4.2 軟件環(huán)境 18
2.5 本章總結 20
第3章 項目部署的環(huán)境準備 21
3.1 Linux環(huán)境準備 21
3.1.1 安裝VMware 21
3.1.2 安裝CentOS 21
3.1.3 遠程終端安裝 30
3.2 Linux環(huán)境配置 33
3.2.1 網絡配置 33
3.2.2 網絡IP地址配置 34
3.2.3 主機名配置 35
3.2.4 防火墻配置 36
3.2.5 一般用戶設置 36
3.3 Hadoop環(huán)境搭建 37
3.3.1 虛擬機環(huán)境準備 37
3.3.2 安裝JDK 42
3.3.3 安裝Hadoop 43
3.3.4 Hadoop分布式集群部署 44
3.4 本章總結 50
第4章 用戶行為數據采集模塊 51
4.1 日志生成 51
4.1.1 數據埋點 51
4.1.2 用戶行為日志格式 52
4.1.3 安裝MySQL 57
4.1.4 數據模擬 59
4.2 消息隊列Kafka 66
4.2.1 安裝ZooKeeper 66
4.2.2 ZooKeeper集群啟動、停止腳本 67
4.2.3 安裝Kafka 68
4.2.4 Kafka集群啟動、停止腳本 70
4.2.5 Kafka topic相關操作 70
4.3 采集日志的Flume 71
4.3.1 Flume組件 72
4.3.2 安裝Flume 72
4.3.3 采集日志Flume配置 73
4.3.4 Flume的攔截器 74
4.3.5 采集日志Flume啟動、停止腳本 77
4.4 消費Kafka日志的Flume 79
4.4.1 日志消費層Flume配置 79
4.4.2 時間戳攔截器 81
4.4.3 日志消費層Flume啟動、停止腳本 83
4.4.4 數據通道測試 83
4.5 采集通道啟動、停止腳本 84
4.6 本章總結 86
第5章 業(yè)務數據采集模塊 87
5.1 在線教育業(yè)務概述 87
5.1.1 在線教育業(yè)務流程 87
5.1.2 在線教育表結構 88
5.1.3 數據同步策略 96
5.1.4 數據同步工具選擇 98
5.2 業(yè)務數據采集 99
5.2.1 業(yè)務數據模型梳理 99
5.2.2 安裝DataX 102
5.2.3 安裝Maxwell 104
5.2.4 全量數據同步 108
5.2.5 增量數據同步 116
5.3 數據采集流程總結 126
5.4 本章總結 129
第6章 數據倉庫搭建模塊 130
6.1 數據倉庫理論準備 130
6.1.1 數據建模概述 130
6.1.2 關系模型與范式理論 131
6.1.3 維度模型 134
6.1.4 維度建模理論之事實表 136
6.1.5 維度建模理論之維度表 138
6.1.6 星形模型、雪花模型與星座模型 141
6.2 數據倉庫建模實踐 142
6.2.1 名詞概念 142
6.2.2 為什么要分層 144
6.2.3 數據倉庫構建流程 144
6.2.4 數據倉庫開發(fā)規(guī)范 150
6.3 數據倉庫搭建環(huán)境準備 154
6.3.1 安裝Hive 154
6.3.2 Hive on Spark配置 157
6.3.3 YARN容量調度器并發(fā)度問題 159
6.3.4 數據倉庫開發(fā)環(huán)境配置 159
6.3.5 模擬數據準備 162
6.3.6 常用函數 164
6.3.7 復雜數據類型 166
6.4 數據倉庫搭建——ODS層 167
6.4.1 用戶行為數據 167
6.4.2 ODS層用戶行為數據導入腳本 169
6.4.3 業(yè)務數據 170
6.4.4 ODS層業(yè)務數據導入腳本 179
6.5 數據倉庫搭建——DIM層 181
6.5.1 章節(jié)維度表(全量) 181
6.5.2 課程維度表(全量) 182
6.5.3 視頻維度表(全量) 184
6.5.4 試卷維度表(全量) 185
6.5.5 來源維度表(全量) 186
6.5.6 題目維度表(全量) 186
6.5.7 地區(qū)維度表(全量) 187
6.5.8 時間維度表(特殊) 188
6.5.9 用戶維度表(拉鏈表) 189
6.5.10 DIM層首日數據裝載腳本 193
6.5.11 DIM層每日數據裝載腳本 193
6.6 數據倉庫搭建——DWD層 194
6.6.1 交易域加購事務事實表 194
6.6.2 交易域加購周期快照事實表 197
6.6.3 交易域試聽下單累積快照事實表 198
6.6.4 交易域下單事務事實表 203
6.6.5 交易域支付成功事務事實表 208
6.6.6 流量域頁面瀏覽事務事實表 212
6.6.7 流量域啟動事務事實表 213
6.6.8 流量域動作事務事實表 215
6.6.9 流量域曝光事務事實表 217
6.6.10 流量域錯誤事務事實表 219
6.6.11 互動域收藏事務事實表 221
6.6.12 互動域章節(jié)評價事務事實表 222
6.6.13 互動域課程評價事務事實表 223
6.6.14 考試域答卷事務事實表 224
6.6.15 考試域答題事務事實表 226
6.6.16 學習域播放周期快照事實表 227
6.6.17 學習域播放事務事實表 232
6.6.18 用戶域用戶注冊事務事實表 234
6.6.19 用戶域用戶登錄事務事實表 237
6.6.20 DWD層首日數據裝載腳本 238
6.6.21 DWD層每日數據裝載腳本 239
6.7 數據倉庫搭建——DWS層 239
6.7.1 最近1日匯總表 240
6.7.2 最近n日匯總表 250
6.7.3 歷史至今匯總表 254
6.8 數據倉庫搭建——ADS層 257
6.8.1 流量主題指標 257
6.8.2 用戶主題指標 262
6.8.3 課程主題指標 269
6.8.4 交易主題指標 278
6.8.5 考試主題指標 280
6.8.6 播放主題指標 285
6.8.7 完課主題指標 287
6.8.8 ADS層數據導入腳本 291
6.9 數據模型評價及優(yōu)化 291
6.10 本章總結 292
第7章 DolphinScheduler全流程調度 293
7.1 DolphinScheduler概述與安裝 293
7.1.1 DolphinScheduler概述 293
7.1.2 DolphinScheduler安裝部署 294
7.2 報表數據導出 300
7.2.1 創(chuàng)建MySQL數據庫和表 300
7.2.2 DataX數據導出 306
7.3 全調度流程 316
7.3.1 數據準備 316
7.3.2 全流程調度配置 316
7.4 郵件報警 324
7.4.1 注冊郵箱 324
7.4.2 配置郵件報警 325
7.5 本章總結 328
第8章 數據可視化模塊 329
8.1 Superset部署 329
8.1.1 環(huán)境準備 329
8.1.2 Superset安裝 330
8.2 Superset使用 334
8.2.1 對接MySQL數據源 334
8.2.2 制作儀表盤 337
8.3 Superset實戰(zhàn) 342
8.3.1 制作餅狀圖 343
8.3.2 制作折線圖 344
8.3.3 制作;鶊D 345
8.3.4 合成儀表盤頁面 347
8.4 ECharts可視化 348
8.5 本章總結 349