本書圍繞新工科背景下大數(shù)據人才培養(yǎng)需求編寫,系統(tǒng)介紹了大數(shù)據采集與預處理、大數(shù)據存儲與管理、大數(shù)據處理與分析、大數(shù)據可視化處理流程;重點分析了科大訊飛大數(shù)據平臺在政務、交通、金融和用戶畫像等實際場景中的應用,還介紹了大數(shù)據實驗環(huán)境的詳細搭建步驟;最后介紹了大數(shù)據治理中法律政策、行業(yè)標準建設的最新進展,分析了大數(shù)據可能帶來的倫理風險和應對策略。
本書將大數(shù)據基礎理論與實際案例結合,輔以編程實踐和有針對性的課后習題,可作為高等院校相關專業(yè)的導論課教材,也可作為大數(shù)據相關從業(yè)人員技術參考書。
于俊偉簡介:
于俊偉,男,1980年5月生,博士,副教授,碩士生導師,2010年畢業(yè)于中國科學院自動化研究所,現(xiàn)任職河南工業(yè)大學人工智能與大數(shù)據學院,主要從事計算機視覺和數(shù)據科學等方向的研究和教學工作。主持國家自然科學基金、河南省重點研發(fā)與推廣專項、河南省高校重點科研項目等多項科研項目,發(fā)表學術論文10余篇,主持翻譯與編著數(shù)據科學、計算機視覺等方面著作5部。
母亞雙簡介:
母亞雙,男,1987年04月生,博士,碩士生導師,現(xiàn)就職于河南工業(yè)大學人工智能與大數(shù)據學院,河南工業(yè)大學大數(shù)據分析處理科研團隊負責人。主要從事機器學習、大數(shù)據分析與處理等方向的研究。近年來,主持國家自然科學基金項目1項,河南省科技攻關項目1項,教育部糧食信息處理與控制重點實驗室開放課題1項,河南工業(yè)大學青年骨干教師資助項目1項;參與國家自然科學基金面上項目2項,國家自然科學基金青年項目1項,省部級以上項目多項,企事業(yè)單位橫向課題多項;在《Pattern Recognition》《Information Science》等重要學術期刊和國際會議上發(fā)表論文二十余篇;申請國家發(fā)明專利2項。
閆秋玲簡介:
閆秋玲,1981年2月生,博士,講師。研究方向是數(shù)據挖掘。以第一作者發(fā)表論文5篇,發(fā)明專利授權一項。主持河南省科技攻關項目一項,河南省教育廳自然科學項目一項。主編教材《大學計算機基礎》,參與翻譯教材《數(shù)據庫系統(tǒng)實現(xiàn)》《人工智能》。
第 1 章? 大數(shù)據概述 ……………………………… 1
1.1 大數(shù)據的產生及其特征 ……………………………… 2
1.1.1 大數(shù)據的產生 ………………………………………………… 2
1.1.2 大數(shù)據的特征 ………………………………………………… 2
1.2 大數(shù)據發(fā)展 …………………………………………… 5
1.2.1 大數(shù)據發(fā)展歷程 ……………………………………………… 5
1.2.2 國外大數(shù)據戰(zhàn)略 ……………………………………………… 6
1.2.3 中國大數(shù)據戰(zhàn)略與政策 ……………………………………… 7
1.2.4 大數(shù)據立法和標準 …………………………………………… 8
1.3 大數(shù)據思維 …………………………………………… 9
1.3.1 大數(shù)據的價值 ………………………………………………… 9
1.3.2 大數(shù)據的思維變革 …………………………………………… 11
1.4 大數(shù)據應用 …………………………………………… 13
1.4.1 大數(shù)據應用層次 ……………………………………………… 13
1.4.2 大數(shù)據應用領域 ……………………………………………… 13
1.5 大數(shù)據技術與工具 …………………………………… 15
1.5.1 大數(shù)據處理流程 ……………………………………………… 15
1.5.2 大數(shù)據行業(yè)全景圖 …………………………………………… 16
1.5.3 大數(shù)據分析平臺 ……………………………………………… 17
1.5.4 大數(shù)據編程語言 ……………………………………………… 19
1.6 本章小結 ……………………………………………… 20
1.7 習題 …………………………………………………… 21
第 2 章? 大數(shù)據采集與預處理 …………………… 22
2.1 概述 …………………………………………………… 23
2.2 大數(shù)據的來源 ………………………………………… 24
2.3 大數(shù)據的采集方法 …………………………………… 25
2.3.1 數(shù)據庫采集 …………………………………………………… 26
2.3.2 系統(tǒng)日志采集 ………………………………………………… 26
2.3.3 網絡數(shù)據采集 ………………………………………………… 26
2.3.4 其他數(shù)據采集 ………………………………………………… 27
2.4 大數(shù)據預處理方法 …………………………………… 28
2.4.1 數(shù)據清洗 ……………………………………………………… 28
2.4.2 數(shù)據集成 ……………………………………………………… 31
2.4.3 數(shù)據變換 ……………………………………………………… 31
2.5 大數(shù)據采集與預處理工具 …………………………… 33
2.5.1 網絡爬蟲 Scrapy …………………………………………… 33
2.5.2 流數(shù)據采集 Kafka …………………………………………… 37
2.5.3 ETL 工具 Kettle ……………………………………………… 39
2.6 本章小結 ……………………………………………… 44
2.7 習題 …………………………………………………… 45
第 3 章? 大數(shù)據存儲與管理技術 ………………… 46
3.1 大數(shù)據存儲與管理技術概述 ………………………… 47
3.2 分布式文件系統(tǒng) ……………………………………… 47
3.2.1 HDFS ………………………………………………………… 48
3.2.2 Ceph ………………………………………………………… 54
3.2.3 GlusterFS …………………………………………………… 56
3.3 NoSQL 數(shù)據庫 ……………………………………… 58
3.3.1 鍵值數(shù)據庫 …………………………………………………… 59
3.3.2 列族數(shù)據庫 …………………………………………………… 60
3.3.3 文檔數(shù)據庫 …………………………………………………… 63
3.3.4 圖數(shù)據庫 ……………………………………………………… 63
3.4 大數(shù)據查詢系統(tǒng) ……………………………………… 64
3.4.1 大數(shù)據查詢系統(tǒng)概述 ………………………………………… 64
3.4.2 Dremel ……………………………………………………… 65
3.5 數(shù)據倉庫 ……………………………………………… 66
3.5.1 數(shù)據倉庫的特點 ……………………………………………… 66
3.5.2 關系型數(shù)據倉庫體系結構 …………………………………… 68
3.5.3 數(shù)據倉庫 Hive ……………………………………………… 69
3.5.4 數(shù)據倉庫 Impala …………………………………………… 71
3.6 本章小結 ……………………………………………… 73
3.7 習題 …………………………………………………… 73
第 4 章? 大數(shù)據處理與分析系統(tǒng) ………………… 75
4.1 概述 …………………………………………………… 76
4.2 谷歌大數(shù)據處理系統(tǒng) ………………………………… 76
4.2.1 GFS…………………………………………………………… 76
4.2.2 MapReduce ………………………………………………… 78
4.2.3 BigTable ……………………………………………………… 78
4.3 分布式計算框架 Hadoop MapReduce …………… 79
4.3.1 Hadoop MapReduce 概述 ………………………………… 79
4.3.2 Hadoop MapReduce 應用舉例 …………………………… 81
4.4.1 Spark 簡介 …………………………………………………… 85
4.4 快速計算框架 Spark ………………………………… 85
4.4.2 Spark 運行架構 ……………………………………………… 88
4.4.3 Spark 的部署方式 …………………………………………… 88
4.4.4 Spark 的數(shù)據抽象 RDD …………………………………… 89
4.4.5 Spark MLlib ………………………………………………… 90
4.4.6 Spark Streaming …………………………………………… 91
4.4.7 Spark SQL …………………………………………………… 93
4.4.8 Spark GraphX ……………………………………………… 94
4.5 其他大數(shù)據分析系統(tǒng) ………………………………… 96
4.5.1 圖計算系統(tǒng) Pregel…………………………………………… 97
4.5.2 流處理系統(tǒng) Flink …………………………………………… 98
4.6 本章小結 ……………………………………………… 99
4.7 習題 …………………………………………………… 99
第 5 章? 大數(shù)據機器學習 ………………………… 100
5.1.1 機器學習的定義 ……………………………………………… 101
5.1.2 機器學習的分類 ……………………………………………… 101
5.1 機器學習簡介 ………………………………………… 101
5.1.3 機器學習的歷史 ……………………………………………… 104
5.1.4 機器學習與數(shù)據挖掘的關系 ………………………………… 108
5.2 數(shù)據 …………………………………………………… 109
5.2.1 數(shù)據概述 ……………………………………………………… 109
5.2.2 帶有標簽的數(shù)據和不帶標簽的數(shù)據 ………………………… 109
5.2.3 訓練數(shù)據、測試數(shù)據、驗證數(shù)據 …………………………… 110
5.3 有監(jiān)督學習 …………………………………………… 111
5.3.1 有監(jiān)督學習簡介 ……………………………………………… 111
5.3.2 回歸 …………………………………………………………… 111
5.3.3 分類 …………………………………………………………… 114
5.3.4 常見的有監(jiān)督學習方法 ……………………………………… 116
5.4 無監(jiān)督學習 …………………………………………… 121
5.4.1 無監(jiān)督學習簡介 ……………………………………………… 121
5.4.2 聚類 …………………………………………………………… 121
5.4.3 關聯(lián)分析 ……………………………………………………… 124
5.5 強化學習 ……………………………………………… 125
5.5.1 強化學習簡介 ………………………………………………… 125
5.5.2 強化學習主流算法 …………………………………………… 127
5.5.3 強化學習的使用場景 ………………………………………… 128
5.6 弱監(jiān)督學習 …………………………………………… 129
5.6.1 弱監(jiān)督學習簡介 ……………………………………………… 129
5.6.2 弱監(jiān)督學習的分類 …………………………………………… 129
5.7 機器學習的相關資源與工具 ………………………… 130
5.8 本章小結 ……………………………………………… 132
5.9 習題 …………………………………………………… 133
第 6 章? 數(shù)據可視化 ……………………………… 134
6.1 可視化概述 …………………………………………… 135
6.1.1 可視化的含義 ………………………………………………… 135
6.1.2 可視化的發(fā)展歷程 …………………………………………… 135
6.1.3 可視化的作用 ………………………………………………… 136
6.2 數(shù)據可視化及其分類 ………………………………… 137
6.2.1 科學可視化 …………………………………………………… 137
6.2.2 信息可視化 …………………………………………………… 138
6.2.3 可視化分析學 ………………………………………………… 139
6.3 數(shù)據可視化工具 ……………………………………… 140
6.3.1 入門級工具 …………………………………………………… 140
6.3.2 信息圖表工具 ………………………………………………… 140
6.3.3 地圖工具 ……………………………………………………… 143
6.3.4 基于編程語言的可視化庫 …………………………………… 144
6.4 本章小結 ……………………………………………… 146
6.5 習題 …………………………………………………… 146
第 7 章? 大數(shù)據行業(yè)應用案例 …………………… 147
7.1 大數(shù)據行業(yè)應用概述 ………………………………… 148
7.2 政務大數(shù)據 …………………………………………… 148
7.3 交通大數(shù)據 …………………………………………… 152
7.3.1 人群生活模式劃分 …………………………………………… 153
7.3.2 道路擁堵模式預測 …………………………………………… 158
7.4 征信大數(shù)據 …………………………………………… 162
7.4.1 企業(yè)征信大數(shù)據應用 ………………………………………… 162
7.4.2 企業(yè)法人資產建模實踐 ……………………………………… 171
7.5 畫像大數(shù)據 …………………………………………… 173
7.5.1 用戶畫像概述 ………………………………………………… 173
7.5.2 構建用戶畫像流程 …………………………………………… 175
7.5.3 構建用戶畫像 ………………………………………………… 178
7.5.4 用戶畫像評估和使用 ………………………………………… 183
7.6 本章小結 ……………………………………………… 184
7.7 習題 …………………………………………………… 185
第 8 章? 大數(shù)據平臺與實驗環(huán)境 ………………… 186
8.1 大數(shù)據平臺與環(huán)境概述 ……………………………… 187
8.1.1 大數(shù)據平臺簡介 ……………………………………………… 187
8.1.2 搭建環(huán)境簡介 ………………………………………………… 189
8.2 安裝虛擬機 …………………………………………… 189
8.3 在虛擬機中安裝 Linux 系統(tǒng) ………………………… 192
8.4 為 Ubuntu 系統(tǒng)配置 Java 開發(fā)環(huán)境 ……………… 194
8.5 在 Ubuntu 系統(tǒng)中安裝 Hadoop …………………… 200
8.5.1 查詢和更改主機名 …………………………………………… 201
8.5.2 更改 host 文件 ……………………………………………… 202
8.5.3 認證 SSH 實現(xiàn)無密碼登錄 ………………………………… 203
8.5.4 復制 Hadoop 2.6.0 到指定目錄并解壓 …………………… 205
8.5.5 配置文件 ……………………………………………………… 206
8.5.7 啟動、驗證和關閉 Hadoop ………………………………… 214
8.6 安裝 Eclipse 和 Eclipse-hadoop-plugin ……… 217
8.6.1 安裝 Eclipse ………………………………………………… 217
8.6.2 配置 Eclipse-hadoop-plugin………………………………… 217
8.7 新建、導入、運行與調試 Hadoop 工程…………… 219
8.7.1 新建 Hadoop 工程…………………………………………… 219
8.7.2 導入已有的 Hadoop 工程…………………………………… 220
8.7.3 運行 Hadoop 工程…………………………………………… 222
8.7.4 調試 Hadoop 工程…………………………………………… 226
8.8 本章小結 ……………………………………………… 229
8.9 習題 …………………………………………………… 229
第 9 章? 大數(shù)據治理 ……………………………… 230
9.1 大數(shù)據治理體系 ……………………………………… 231
9.2 大數(shù)據法律政策 ……………………………………… 232
9.3 大數(shù)據行業(yè)標準 ……………………………………… 234
9.4 大數(shù)據治理內容 ……………………………………… 237
9.5 大數(shù)據倫理風險 ……………………………………… 240
9.6 本章小結 ……………………………………………… 243
9.7 習題 …………………………………………………… 243
主要參考文獻………………………………………………… 244