實(shí)戰(zhàn)大數(shù)據(jù)(Hadoop+Spark+Flink)——從平臺構(gòu)建到交互式數(shù)據(jù)分析(離線/實(shí)時)
定 價:99 元
- 作者:楊俊
- 出版時間:2021/6/1
- ISBN:9787111679660
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP274
- 頁碼:236
- 紙張:
- 版次:
- 開本:16開
《實(shí)戰(zhàn)大數(shù)據(jù)(Hadoop+Spark+Flink)——從平臺構(gòu)建到交互式數(shù)據(jù)分析(離線/實(shí)時)》詳細(xì)介紹了大數(shù)據(jù)工程師在實(shí)際工作中應(yīng)該熟練掌握的大數(shù)據(jù)技術(shù)。全書共8章,分別是大數(shù)據(jù)技術(shù)概述、搭建IDEA開發(fā)環(huán)境及Linux虛擬機(jī)、基于Hadoop構(gòu)建大數(shù)據(jù)平臺、基于HBase和Kafka構(gòu)建海量數(shù)據(jù)存儲與交換系統(tǒng)、用戶行為離線分析—構(gòu)建日志采集和分析平臺、基于Spark的用戶行為實(shí)時分析、基于Flink的用戶行為實(shí)時分析、用戶行為數(shù)據(jù)可視化。本書以一個完整的大數(shù)據(jù)項(xiàng)目為主線,涵蓋Hadoop、Spark、Flink等主流大數(shù)據(jù)技術(shù),按照大數(shù)據(jù)工程師的項(xiàng)目開發(fā)流程,理論與實(shí)踐結(jié)合,逐步推進(jìn),使讀者在學(xué)習(xí)大數(shù)據(jù)核心技術(shù)的同時,也能掌握開發(fā)大數(shù)據(jù)項(xiàng)目的完整流程,從而獲得大數(shù)據(jù)項(xiàng)目開發(fā)經(jīng)驗(yàn)。
《實(shí)戰(zhàn)大數(shù)據(jù)(Hadoop+Spark+Flink)——從平臺構(gòu)建到交互式數(shù)據(jù)分析(離線/實(shí)時)》既可以作為大數(shù)據(jù)工程師的必備開發(fā)手冊,也可以作為高校大數(shù)據(jù)及相關(guān)專業(yè)的教材或?qū)嶒?yàn)手冊。
目錄
前言
第1章 大數(shù)據(jù)技術(shù)概述1
1.1 什么是大數(shù)據(jù)1
1.2 大數(shù)據(jù)平臺架構(gòu)1
1.2.1 數(shù)據(jù)獲取2
1.2.2 數(shù)據(jù)存儲2
1.2.3 數(shù)據(jù)處理3
1.2.4 交互式分析3
1.2.5 機(jī)器學(xué)習(xí)與數(shù)據(jù)挖掘4
1.2.6 資源管理4
1.3 大數(shù)據(jù)工程師的技能樹4
1.3.1 大數(shù)據(jù)主流開發(fā)語言5
1.3.2 大數(shù)據(jù)平臺的構(gòu)建5
1.3.3 大數(shù)據(jù)采集5
1.3.4 大數(shù)據(jù)存儲與交換5
1.3.5 大數(shù)據(jù)離線計算5
1.3.6 大數(shù)據(jù)實(shí)時計算6
1.4 大數(shù)據(jù)項(xiàng)目需求分析與設(shè)計6
1.4.1 項(xiàng)目需求分析6
1.4.2 系統(tǒng)架構(gòu)設(shè)計7
1.4.3 離線和實(shí)時計算數(shù)據(jù)流程設(shè)計8
1.4.4 大數(shù)據(jù)平臺規(guī)劃8
1.5 本章小結(jié)9
第2章 搭建IDEA開發(fā)環(huán)境及Linux
虛擬機(jī)10
2.1 搭建IDEA開發(fā)環(huán)境10
2.1.1 JDK 的安裝與配置10
2.1.2 Maven 的安裝與配置12
2.1.3 IDEA 的安裝與配置13
2.1.4 使用IDEA構(gòu)建Maven項(xiàng)目17
2.2 搭建Linux虛擬機(jī)19
2.2.1 安裝Linux系統(tǒng)19
2.2.2 配置Linux靜態(tài)IP19
2.2.3 Linux主機(jī)名和IP映射20
2.2.4 關(guān)閉Linux防火墻20
2.2.5 創(chuàng)建Linux用戶和用戶組20
2.2.6 Linux SSH免密登錄21
2.3 本章小結(jié)22
第3章 基于Hadoop構(gòu)建大數(shù)據(jù)
平臺23
3.1 Zookeeper分布式協(xié)調(diào)服務(wù)23
3.1.1 Zookeeper架構(gòu)設(shè)計及原理23
3.1.2 Zookeeper集群安裝前的準(zhǔn)備
工作26
3.1.3 Zookeeper集群的安裝部署29
3.1.4 Zookeeper shell的操作32
3.2 HDFS分布式文件系統(tǒng)34
3.2.1 HDFS架構(gòu)設(shè)計及原理34
3.2.2 HDFS的高可用(HA)42
3.2.3 HDFS聯(lián)邦機(jī)制44
3.3 YARN資源管理系統(tǒng)44
3.3.1 YARN架構(gòu)設(shè)計及原理45
3.3.2 MapReduce on YARN工作流程48
3.3.3 YARN的容錯性49
3.3.4 YARN的高可用(HA)49
3.3.5 YARN的調(diào)度器及使用50
3.4 Hadoop分布式集群的構(gòu)建53
3.4.1 HDFS分布式集群的構(gòu)建53
3.4.2 YARN分布式集群的構(gòu)建58
3.4.3 Hadoop集群運(yùn)行測試61
3.4.4 Hadoop集群調(diào)優(yōu)62
3.5 MapReduce分布式計算框架64
3.5.1 MapReduce概述64
3.5.2 MapReduce編程模型67
3.5.3 MapReduce應(yīng)用示例68
3.5.4 WordCount代碼實(shí)現(xiàn)70
3.6 本章小結(jié)72
第4章 基于HBase和Kafka構(gòu)建
海量數(shù)據(jù)存儲與交換系統(tǒng)73
4.1 構(gòu)建HBase分布式實(shí)時
數(shù)據(jù)庫73
4.1.1 HBase概述73
4.1.2 HBase架構(gòu)設(shè)計76
4.1.3 HBase分布式集群的構(gòu)建78
4.1.4 HBase性能調(diào)優(yōu)82
4.1.5 HBase新聞業(yè)務(wù)表建模86
4.2 搭建Kafka分布式消息系統(tǒng)86
4.2.1 Kafka概述86
4.2.2 Kafka架構(gòu)設(shè)計87
4.2.3 Kafka分布式集群的構(gòu)建89
4.2.4 Kafka集群監(jiān)控92
4.3 本章小結(jié)94
第5章 用戶行為離線分析——構(gòu)建
日志采集和分析平臺95
5.1 搭建Flume日志采集系統(tǒng)95
5.1.1 Flume概述95
5.1.2 Flume架構(gòu)設(shè)計96
5.1.3 Flume環(huán)境的搭建98
5.1.4 構(gòu)建Flume集群100
5.2 使用Flume采集用戶行為
數(shù)據(jù)102
5.2.1 Flume與Kafka集成102
5.2.2 Flume與HBase集成104
5.2.3 Flume與Kafka、HBase集成109
5.3 基于Hive的離線大數(shù)據(jù)分析112
5.3.1 Hive概述112
5.3.2 Hive架構(gòu)設(shè)計112
5.3.3 Hive的安裝部署117
5.3.4 Hive在大數(shù)據(jù)倉庫中的應(yīng)用120
5.3.5 Hive與HBase集成121
5.4 基于Hive 的用戶行為數(shù)據(jù)
離線分析122
5.4.1 離線項(xiàng)目架構(gòu)設(shè)計122
5.4.2 用戶行為離線分析123
5.5 本章小結(jié)126
第6章 基于Spark的用戶行為實(shí)時
分析127
6.1 Spark快速入門127
6.1.1 Spark概述127
6.1.2 Spark的最簡安裝128
6.1.3 Spark實(shí)現(xiàn)WordCount129
6.2 Spark Core的核心功能131
6.2.1 Spark架構(gòu)的原理131
6.2.2 彈性分布式數(shù)據(jù)集RDD132
6.2.3 Spark 算子133
6.2.4 Pair RDD及算子135
6.3 Spark分布式集群的構(gòu)建135
6.3.1 Spark的運(yùn)行模式135
6.3.2 Standalone模式集群的構(gòu)建136
6.3.3 Spark on YARN模式集群的
構(gòu)建139
6.4 基于Spark Streaming的新聞
項(xiàng)目實(shí)時分析140
6.4.1 Spark Streaming概述140
6.4.2 Spark Streaming的運(yùn)行原理141
6.4.3 Spark Streaming編程模型142
6.4.4 Spark Streaming實(shí)時分析用戶
行為144
6.5 基于Spark SQL的新聞項(xiàng)目
離線分析157
6.5.1 Spark SQL架構(gòu)的原理157
6.5.2 Spark SQL與Hive、MySQL、
HBase集成158
6.5.3 Spark SQL用戶行為離線分析162
6.6 基于Spark Structured Streaming
的新聞項(xiàng)目實(shí)時分析167
6.6.1 Structured Streaming概述167
6.6.2 Structured Streaming編程模型168
6.6.3 基于Structured Streaming的用戶
行為實(shí)時分析168
6.7 本章小結(jié)173
第7章 基于Flink的用戶行為實(shí)時
分析174
7.1 Flink快速入門174
7.1.1 Flink概述174
7.1.2 Flink的最簡安裝176
7.1.3 Flink實(shí)現(xiàn)WordCount177
7.2 Flink分布式集群的構(gòu)建181
7.2.1 Flink的運(yùn)行模式181
7.2.2 Flink Standalone模式集群的
構(gòu)建181
7.2.3 Flink on YARN模式集群的構(gòu)建184
7.3 基于Flink DataStream的新聞
項(xiàng)目實(shí)時分析187
7.3.1 Flink DataStream概述187
7.3.2 Flink DataStream 編程模型188
7.3.3 Flink DataStream用戶行為實(shí)時
分析190
7.4 基于Flink DataSet的新聞項(xiàng)目
離線分析198
7.4.1 Flink DataSet的運(yùn)行原理198
7.4.2 Flink DataSet 編程模型199
7.4.3 Flink DataSet用戶行為離線
分析200
7.5 本章小結(jié)205
第8章 用戶行為數(shù)據(jù)可視化206
8.1 構(gòu)建Java Web系統(tǒng)查詢用戶
行為206
8.1.1 基于Java Web的系統(tǒng)架構(gòu)206
8.1.2 構(gòu)建并部署Java Web項(xiàng)目208
8.1.3 用戶行為查詢代碼開發(fā)217
8.2 用戶行為數(shù)據(jù)展示與分析229
8.2.1 項(xiàng)目打包發(fā)布229
8.2.2 項(xiàng)目整體聯(lián)調(diào)231
8.2.3 數(shù)據(jù)大屏展示與用戶行為分析235
8.3 本章小結(jié)236