本書從系統(tǒng)的角度出發(fā),按照大數(shù)據處理流程的順序,全面介紹了大數(shù)據技術的基礎知識,提升讀者對大數(shù)據的認知。全書分3個邏輯層次,共9章。
本書作為大數(shù)據技術的基礎教材,目的不在于讓讀者對具體的某個技術平臺細節(jié)有很深的理解,而是盡量讓讀者體會整個大數(shù)據處理的技術流程,使讀者能夠掌握大數(shù)據技術的整體框架,能夠在未來的學習和工作中通過系統(tǒng)化的大數(shù)據思維能力為所遇到的問題提供解決思路和方案。
本書作為大數(shù)據技術的入門教材,能夠幫助希望成為信息時代沖浪者的讀者,從一個外行跨入大數(shù)據技術的大門,幫助大數(shù)據技術的初學者盡快了解大數(shù)據技術。
本書從系統(tǒng)的角度出發(fā),按照大數(shù)據處理流程的順序,全面介紹了大數(shù)據技術的基礎知識,提升讀者對大數(shù)據的認知。
孟憲偉,遼寧科技學院-曙光大數(shù)據學院教授,碩士學位,主持省市級項目8項,發(fā)表學術論文18篇,研究領域為社會智能與復雜數(shù)據處理。中國教育信息化學會理事,本溪市網絡與信息安全專家。
第1章 什么是大數(shù)據 1
1.1 人類信息文明的發(fā)展 1
1.2 大數(shù)據時代的來臨 2
1.2.1 信息技術的發(fā)展 3
1.2.2 數(shù)據產生方式的變革 5
1.3 大數(shù)據的主要特征 7
1.3.1 大數(shù)據的數(shù)據特征 8
1.3.2 大數(shù)據的技術特征 10
1.4 大數(shù)據的社會價值 11
習題 12
本章參考文獻 13
第2章 大數(shù)據技術基礎 14
2.1 計算機操作系統(tǒng) 14
2.1.1 什么是操作系統(tǒng) 14
2.1.2 Linux操作系統(tǒng) 16
2.2 編程語言 18
2.2.1 編程語言的發(fā)展與種類 18
2.2.2 Python語言 21
2.3 數(shù)據庫 23
2.3.1 SQL數(shù)據庫的發(fā)展與成熟 24
2.3.2 NoSQL數(shù)據庫及其特點 25
2.3.3 NoSQL數(shù)據庫的分類 27
2.3.4 NewSQL數(shù)據庫 30
2.4 算法 30
2.4.1 什么是算法 30
2.4.2 大數(shù)據時代的算法 32
2.5 大數(shù)據系統(tǒng) 33
2.5.1 Hadoop平臺 33
2.5.2 Spark平臺 35
2.6 大數(shù)據的數(shù)據類型 37
2.6.1 結構化數(shù)據 38
2.6.2 半結構化數(shù)據 38
2.6.3 非結構化數(shù)據 39
2.7 大數(shù)據應用的開發(fā)流程 40
2.8 數(shù)據科學算法的應用流程 41
習題 42
本章參考文獻 43
第3章 數(shù)據采集與預處理 44
3.1 大數(shù)據的來源 44
3.1.1 傳統(tǒng)商業(yè)數(shù)據 45
3.1.2 互聯(lián)網數(shù)據 45
3.1.3 物聯(lián)網數(shù)據 46
3.2 數(shù)據的采集方法 47
3.2.1 系統(tǒng)日志的采集方法 47
3.2.2 網頁數(shù)據的采集方法 52
3.2.3 其他數(shù)據的采集方法 55
3.3 數(shù)據預處理 56
3.3.1 影響數(shù)據質量的因素 56
3.3.2 數(shù)據預處理的目的 59
3.3.3 數(shù)據預處理的流程 60
習題 67
本章參考文獻 67
第4章 大數(shù)據存儲與管理 68
4.1 數(shù)據存儲概述 68
4.1.1 數(shù)據的存儲介質 68
4.1.2 數(shù)據的存儲模式 72
4.2 大數(shù)據時代的存儲管理系統(tǒng) 76
4.2.1 文件系統(tǒng) 76
4.2.2 分布式文件系統(tǒng) 77
4.2.3 數(shù)據庫 80
4.2.4 鍵-值數(shù)據庫 82
4.2.5 分布式數(shù)據庫 82
4.2.6 關系型數(shù)據庫 84
4.2.7 數(shù)據倉庫 85
4.2.8 文檔數(shù)據庫 87
4.2.9 圖形數(shù)據庫 89
4.2.10 云存儲 90
習題 93
本章參考文獻 93
第5章 大數(shù)據計算框架 94
5.1 計算框架 94
5.1.1 批處理框架 94
5.1.2 流式處理框架 95
5.1.3 交互式處理框架 96
5.2 MapReduce 96
5.2.1 MapReduce編程的特點 97
5.2.2 MapReduce的計算模型 97
5.2.3 MapReduce的資源管理框架 101
5.3 Spark 105
5.3.1 Spark的基本知識 105
5.3.2 Spark的生態(tài)系統(tǒng) 107
5.3.3 Spark的架構與原理 109
5.3.4 Spark RDD的基本知識 111
習題 115
本章參考文獻 115
第6章 數(shù)據挖掘 116
6.1 什么是數(shù)據挖掘 116
6.2 數(shù)據挖掘的對象與價值 119
6.2.1 數(shù)據挖掘的對象 119
6.2.2 數(shù)據挖掘的價值 121
6.3 數(shù)據挖掘常用的技術 123
6.3.1 關聯(lián)分析 123
6.3.2 分類分析 126
6.3.3 聚類分析 129
6.4 數(shù)據挖掘常用的工具 132
6.4.1 RapidMiner 133
6.4.2 WEKA 133
6.4.3 Orange 134
6.4.4 R語言 134
6.4.5 Mining 135
6.5 數(shù)據挖掘的典型應用 137
6.5.1 社交媒體領域的應用 137
6.5.2 市場營銷領域的應用 137
6.5.3 科學研究領域的應用 138
6.5.4 電信領域的應用 138
6.5.5 教育領域的應用 138
6.5.6 醫(yī)學領域的應用 139
習題 140
本章參考文獻 140
第7章 數(shù)據可視化 141
7.1 什么是可視化 141
7.1.1 可視化的含義 141
7.1.2 可視化的發(fā)展歷程 142
7.1.3 可視化的作用 143
7.2 數(shù)據可視化及其分類 144
7.2.1 科學可視化 144
7.2.2 信息可視化 146
7.2.3 可視化分析學 147
7.3 數(shù)據可視化工具 147
7.3.1 入門級工具 148
7.3.2 信息圖表工具 149
7.3.3 地圖工具 152
7.3.4 高級分析工具 155
7.4 數(shù)據可視化案例 157
7.4.1 數(shù)字美食 157
7.4.2 空中的間諜 157
習題 158
本章參考文獻 158
第8章 大數(shù)據與云計算 160
8.1 什么是云計算 160
8.1.1 云計算的概念與特點 160
8.1.2 云計算的分類 162
8.1.3 云計算與分布式計算的區(qū)別 163
8.1.4 云計算的體系架構 163
8.1.5 云計算需要解決的問題 165
8.1.6 具有代表性的云計算廠商 166
8.2 大數(shù)據與云計算的關系 167
8.2.1 云計算將改變大數(shù)據分析 168
8.2.2 大數(shù)據與云計算的區(qū)別和
聯(lián)系 168
8.2.3 大數(shù)據與云計算未來的發(fā)展
方向和趨勢 169
8.2.4 大數(shù)據與云計算在生產生活中的
應用 171
習題 173
本章參考文獻 174
第9章 大數(shù)據與人工智能 175
9.1 什么是人工智能 175
9.1.1 人工智能的發(fā)展歷史 176
9.1.2 人工智能的研究方向和方法 182
9.1.3 人工智能面臨的問題 184
9.2 數(shù)據驅動的智能時代 185
9.2.1 人工智能與大數(shù)據 185
9.2.2 產業(yè)戰(zhàn)略 187
習題 188
本章參考文獻 188