大數據技術和應用
內容描述
這是一本大數據技術入門的簡明教材。全書理論和實踐相結合,以應用實戰為主,深入淺出地講解每個知識點,對每個應用實驗按學習習慣,分步驟講解,每個步驟都有文字說明和效果截圖,使讀者能清晰地知曉動手實操的效果和錯誤之處。
全書分為9章,全面介紹了大數據技術的相關基礎知識、HDFS和數據庫、採集傳輸工具、挖掘分析算法、Spark計算框架、可視化、大數據安全、大數據應用等內容,著重介紹了HDFS分佈式文件系統、NoSQL等各種數據庫、數據倉庫Hive,以及數據採集分析技術,並配套了詳細的實驗教程以及練習題。
本書適合作為高等院校電腦、軟件工程、大數據專業高職、本科生的教材,同時可供企業中從事大數據開發的工程師和科技工作者參考。
目錄大綱
目 錄
第1章 瞭解大數據 1
1.1 大數據處理的基礎技術 1
1.1.1 大數據相關概念 1
1.1.2 大數據處理流程 2
1.1.3 大數據處理基礎技術 3
1.2 主流大數據技術 6
1.2.1 主流大數據技術各階段 6
1.2.2 Hadoop生態系統 6
1.2.3 Hadoop核心組件簡介 7
1.3 大數據平臺解決方案 8
1.3.1 Cloudera 8
1.3.2 Hortonworks 8
1.3.3 MapR 9
1.3.4 FusionInsight 9
1.3.5 Transwarp Data Hub 10
1.4 大數據發展現狀和趨勢 11
1.4.1 大數據市場規模 11
1.4.2 國內大數據發展面臨的問題 11
1.4.3 大數據發展趨勢 11
1.5 習題 12
第2章 大數據基礎軟件 14
2.1 Linux基礎介紹 14
2.1.1 用戶和用戶組管理 14
2.1.2 文件和目錄操作 19
2.1.3 文本編輯器 23
2.2 Java基礎介紹 25
2.2.1 Java基礎 25
2.2.2 編程開發 29
2.2.3 Java開發環境配置 29
2.3 SQL語言基礎介紹 32
2.3.1 數據庫基礎 32
2.3.2 SQL簡介 34
2.3.3 SQL語法 34
2.3.4 SQL基礎語法 36
2.4 實驗一:在Linux中安裝和使用Java 38
2.4.1 本實驗目標 38
2.4.2 本實驗知識點 38
2.4.3 項目實施過程 39
2.4.4 常見問題 45
2.5 實驗二:在Linux中安裝和使用MySQL 46
2.5.1 本實驗目標 46
2.5.2 本實驗知識點 46
2.5.3 項目實施過程 47
2.5.4 常見問題 54
2.6 習題 55
第3章 大數據採集 59
3.1 大數據採集技術介紹 59
3.2 常見採集工具和廠商 60
3.2.1 搜索引擎查看 60
3.2.2 工具分類 61
3.3 八爪魚採集器介紹 63
3.3.1 八爪魚採集原理 63
3.3.2 八爪魚實現的功能 63
3.4 爬山虎採集器介紹 65
3.4.1 爬山虎介紹 65
3.4.2 產品特點和核心技術 65
3.4.3 軟件界面 66
3.5 流數據採集工具Flume 68
3.5.1 Flume背景 68
3.5.2 Flume NG基本架構 68
3.5.3 Flume案例分析 70
3.6 數據傳輸工具Sqoop介紹 73
3.6.1 Sqoop工具介紹 73
3.6.2 Sqoop2特性 74
3.6.3 Sqoop案例 76
3.6.4 Sqoop問題集 77
3.7 實驗三:Sqoop的安裝配置及使用 78
3.7.1 本實驗目標 78
3.7.2 本實驗知識點 79
3.7.3 項目實施過程 79
3.7.4 常見問題 87
3.8 實驗四:Kafka的安裝、配置及使用 90
3.8.1 本實驗目標 90
3.8.2 本實驗知識點 90
3.8.3 項目實施過程 91
3.8.4 常見問題 97
第4章 大數據存儲 99
4.1 數據庫和數據倉庫 99
4.1.1 數據庫類型簡介 99
4.1.2 數據倉庫介紹 101
4.2 分佈式文件系統HDFS 103
4.2.1 HDFS介紹 103
4.2.2 HDFS體系結構 106
4.3 分佈式分析引擎Kylin介紹 108
4.3.1 Kylin簡介 108
4.3.2 Kylin基本原理和架構 109
4.3.3 Kylin的最新特性 114
4.4 大數據倉庫Hive 115
4.4.1 Hive簡介 115
4.4.2 Hive體系結構 116
4.4.3 Hive數據存儲模型 118
4.4.4 Hive應用場景 121
4.5 NoSQL數據庫 122
4.5.1 NoSQL簡介 122
4.5.2 NoSQL在系統架構中的應用 125
4.6 鍵-值存儲數據庫Memcached、Redis 128
4.6.1 Redis基本介紹 128
4.6.2 Redis命令總結 128
4.7 面向文檔數據庫MongoDB介紹 130
4.7.1 MongoDB簡介 130
4.7.2 MongoDB深入剖析 131
4.8 實驗五:Hadoop的安裝、配置及HDFS使用 133
4.8.1 本實驗目標 133
4.8.2 本實驗知識點 133
4.8.3 項目實施過程 133
4.8.4 常見問題 147
4.9 實驗六:Redis數據庫的安裝與使用 148
4.9.1 本實驗目標 148
4.9.2 本實驗知識點 148
4.9.3 項目實施過程 148
4.9.4 常用命令及配置文件介紹 154
4.10 實驗七:HBase的安裝和配置 158
4.10.1 本實驗目標 158
4.10.2 本實驗知識點 159
4.10.3 項目實施過程 159
4.10.4 常見問題 165
4.11 習題 167
第5章 Spark內存計算框架 170
5.1 Spark簡介 170
5.2 Spark技術原理 173
5.2.1 Spark與Hadoop的對比 173
5.2.2 Spark運行架構 175
5.2.3 RDD基本概念 177
5.3 Spark SQL介紹 181
5.4 Spark Streaming實時處理技術 183
5.5 Spark MLlib數據挖掘庫 184
5.5.1 機器學習定義 184
5.5.2 Spark MLlib的優勢 187
5.5.3 Spark MLlib支持的機器學習類型 187
5.6 Spark GraphX圖處理技術 188
5.7 Spark編程實例 190
第6章 大數據分析挖掘 194
6.1 大數據分析概述 194
6.1.1 數據分析與數據挖掘的區別 194
6.1.2 常見數據分析挖掘工具 195
6.1.3 數據挖掘十大算法介紹 197
6.2 分類算法概述 199
6.2.1 分類預測常見算法 199
6.2.2 分類預測實現過程 199
6.3 決策樹算法介紹 201
6.3.1 決策樹的定義 201
6.3.2 決策樹的優缺點 202
6.3.3 決策樹的發展 202
6.3.4 決策樹的構造流程 202
6.3.5 決策樹的相關指標 203
6.3.6 常見決策樹算法 204
6.4 推薦算法介紹 208
6.4.1 常用推薦算法介紹 208
6.4.2 主要推薦方法對比 210
6.5 Apriori算法介紹 211
6.5.1 Apriori算法 211
6.5.2 頻繁項集的評估標準 211
6.5.3 Apriori算法思想 212
6.5.4 Apriori算法流程 213
6.5.5 Apriori算法小結 214
第7章 大數據可視化 215
7.1 大數據可視化概述 215
7.1.1 數據可視化概述 215
7.1.2 數據可視化流程 216
7.1.3 數據可視化展現形式 217
7.2 大數據可視化工具概述 229
7.3 Tableau大數據可視化技術簡介 230
7.4 Power BI大數據可視化技術簡介 231
7.5 實驗八:ECharts的安裝與使用 232
7.5.1 本實驗目標 232
7.5.2 本實驗知識點 232
7.5.3 項目實施過程 232
7.5.4 常見問題 243
第8章 大數據安全 246
8.1 大數據安全的挑戰與對策 246
8.2 數據管理安全 248
8.3 數據安全分析 250
第9章 大數據應用 253
9.1 企業大數據應用 253
9.1.1 中國企業大數據現狀 253
9.1.2 企業大數據應用需求 254
9.2 互聯網大數據 256
9.2.1 互聯網行業擁有大數據的關鍵因素 256
9.2.2 大數據方案後的價值體現 256
9.3 零售大數據 258
9.4 醫療大數據 262
9.5 大數據未來展望 263
9.6 大數據和雲計算的關系 265
9.6.1 雲計算的特徵 265
9.6.2 雲計算與大數據的關系 265
9.6.3 雲計算及其分佈式結構是重要途徑 266
9.6.4 雲數據庫的必然 267
9.6.5 雲數據庫需滿足的要求 267
9.6.6 雲計算能為大數據帶來的變化 268
參考文獻 269