本書是結(jié)合職業(yè)教育的實際情況開發(fā)的云計算技術(shù)與應(yīng)用專業(yè)系列教材之一。對云計算技術(shù)與應(yīng)用專業(yè)、大數(shù)據(jù)技術(shù)與應(yīng)用專業(yè)或者大數(shù)據(jù)初學者是一本不錯的入門教程。本書強調(diào)理論知識以夠用為度,注重動手能力,在動手中逐漸掌握大數(shù)據(jù)相關(guān)技術(shù)。本書內(nèi)容包括大數(shù)據(jù)概述、Hadoop基礎(chǔ)知識、大數(shù)據(jù)平臺搭建、數(shù)據(jù)的獲取、數(shù)據(jù)清理、數(shù)據(jù)分析、數(shù)據(jù)可視化、大數(shù)據(jù)管理平臺Ambari等知識。涵蓋內(nèi)容較為廣泛,但注重點到為止,方便讀者迅速入門。
張靖(1988.6—),男,重慶大學軟件工程碩士畢業(yè),重慶電子工程職業(yè)學院云計算技術(shù)與應(yīng)用專業(yè)專職教師。近幾年來,獲得中國通信工業(yè)協(xié)會第一屆教學成果獎一等獎;實用新型專利2項;發(fā)表論文3篇;云數(shù)據(jù)庫應(yīng)用(MySQL)副主編;2018年全國職業(yè)院校技能大賽云計算技術(shù)與應(yīng)用賽項二等獎指導老師,2018年全國職業(yè)技能競賽大數(shù)據(jù)技術(shù)與應(yīng)用一等獎指導老師;指導學生參加重慶市技能競賽獲一等獎1項,2等獎1項,3等獎2項。
第1章 感知大數(shù)據(jù) 1
任務(wù)1 認知大數(shù)據(jù) 1
子任務(wù)1 定義大數(shù)據(jù) 2
子任務(wù)2 洞悉大數(shù)據(jù)的特征 2
任務(wù)2 探究大數(shù)據(jù)常用的技術(shù) 3
任務(wù)3 窺視大數(shù)據(jù)的商業(yè)應(yīng)用 4
課后練習 5
第2章 環(huán)視Hadoop 6
任務(wù)1 溯源Hadoop 6
子任務(wù)1 較量Hadoop與傳統(tǒng)文件系統(tǒng) 8
子任務(wù)2 發(fā)現(xiàn)Hadoop的核心和特點 9
子任務(wù)3 初訪MapReduce 10
任務(wù)2 查究Hadoop分布式文件系統(tǒng) 12
子任務(wù)1 探究HDFS工作機制 12
子任務(wù)2 厘清HDFS的前提和設(shè)計目標 15
子任務(wù)3 深挖HDFS的核心機制 19
任務(wù)3 構(gòu)建MapReduce編程模型 22
子任務(wù)1 解構(gòu)MapReduce編程模型 22
子任務(wù)2 揭秘YARN與MapReduce 24
任務(wù)4 漫游Hadoop系統(tǒng)及其生態(tài)圈 25
課后練習 32
第3章 部署Hadoop大數(shù)據(jù)平臺 34
任務(wù)1 掌控Hadoop平臺的部署模式 34
任務(wù)2 部署Hadoop集群 36
任務(wù)3 編寫首個MapReduce程序 59
任務(wù)4 初次運行MapReduce程序 60
課后練習 64
本章附錄 65
第4章 設(shè)計爬蟲獲取數(shù)據(jù)源 69
任務(wù)1 初探大數(shù)據(jù) 69
任務(wù)2 剖析大數(shù)據(jù) 74
任務(wù)3 爬取大數(shù)據(jù) 76
任務(wù)4 活用Scrapy框架高效編制爬蟲 79
任務(wù)5 運用Scrapy 81
課后練習 89
第5章 清洗數(shù)據(jù)與存儲結(jié)構(gòu)化 91
任務(wù)1 揭示數(shù)據(jù)清洗 91
任務(wù)2 清洗數(shù)據(jù) 92
子任務(wù)1 熟知數(shù)據(jù)的基本操作 92
子任務(wù)2 處理數(shù)據(jù)缺失 94
子任務(wù)3 規(guī)范化數(shù)據(jù) 96
子任務(wù)4 處理數(shù)據(jù)表結(jié)構(gòu)的錯誤 97
子任務(wù)5 處理日期數(shù)據(jù)的問題 102
任務(wù)3 使用分布式數(shù)據(jù)庫系統(tǒng)和結(jié)構(gòu)存儲數(shù)據(jù) 104
子任務(wù)1 安裝并使用Hive數(shù)據(jù)倉庫 104
子任務(wù)2 安裝并使用HBase分布式數(shù)據(jù)庫 110
課后練習 114
第6章 分析大數(shù)據(jù) 115
任務(wù)1 透視數(shù)據(jù)分析 115
任務(wù)2 構(gòu)建分析模型 116
子任務(wù)1 厘清數(shù)據(jù)分析過程 116
子任務(wù)2 數(shù)據(jù)機器學習模型 117
任務(wù)3 運用大數(shù)據(jù)分析算法分析數(shù)據(jù) 119
子任務(wù)1 運用K-Means聚類算法分析數(shù)據(jù) 120
子任務(wù)2 運用線性回歸算法分析數(shù)據(jù) 123
子任務(wù)3 運用決策樹算法分析數(shù)據(jù) 127
課后練習 130
第7章 可視化大數(shù)據(jù) 131
任務(wù)1 洞察pyecharts庫 131
任務(wù)2 活用可視化 132
子任務(wù)1 活用柱狀圖/條形圖(Bar) 132
子任務(wù)2 活用散點圖(EffectScatter) 139
子任務(wù)3 活用漏斗圖(Funnel) 142
子任務(wù)4 活用儀表盤(Gauge) 143
子任務(wù)5 活用地理坐標圖(Geo) 144
子任務(wù)6 活用關(guān)系圖(Graph) 145
子任務(wù)7 活用熱力圖(HeatMap) 148
子任務(wù)8 活用K線圖(Kline/Candlestick) 150
子任務(wù)9 活用折線圖/面積圖(Line) 152
子任務(wù)10 活用水球圖(Liquid) 153
子任務(wù)11 活用地圖(Map) 154
子任務(wù)12 活用餅圖(Pie) 155
子任務(wù)13 活用平行坐標系(Parallel) 156
子任務(wù)14 活用雷達圖(Radar) 159
子任務(wù)15 活用詞云(WordCloud)圖 160
課后練習 161
第8章 平臺化快速部署Hadoop 163
任務(wù)1 探尋大數(shù)據(jù)管理平臺 163
任務(wù)2 配置基礎(chǔ)環(huán)境 165
子任務(wù)1 配置Linux系統(tǒng) 165
子任務(wù)2 禁用Transparent Huge Pages 169
子任務(wù)3 安裝并配置JDK 170
任務(wù)3 安裝并配置Ambari 170
任務(wù)4 快速部署Hadoop大數(shù)據(jù)集群 173
課后練習 178
附錄A 課后練習參考答案 179