實戰大數據 Hadoop+Spark+Flink 從平臺構建到交互式數據分析 (離線/實時)第2版
楊俊 王年明 謝誌剛
- 出版商: 機械工業
- 出版日期: 2025-12-01
- 售價: $594
- 語言: 簡體中文
- ISBN: 7111798538
- ISBN-13: 9787111798538
-
相關分類:
大數據 Big-data
下單後立即進貨 (約4週~6週)
相關主題
商品描述
本書以一個完整的大數據項目為主線,系統性講解Hadoop、Spark、Flink等主流大數據技術的核心原理與開發實踐,融合離線分析、實時計算、數據倉庫、推薦系統與數據可視化五大核心場景,打造“數據采集-存儲-計算-應用”全鏈路閉環。全書共9章:大數據技術概述、搭建IDEA開發環境及Linux虛擬機、基於Hadoop構建大數據平臺、基於HBase和Kafka構建海量數據存儲與交換系統、用戶行為離線分析—構建數據采集和分析平臺、基於Spark的用戶行為實時分析、基於Flink的用戶行為實時分析、基於Flink的新聞資訊推薦系統、新聞資訊系統數據可視化。
相較第1版,本書進行了三方面的內容升級。技術版本革新:全面適配Hadoop 3生態、Spark結構化流處理及Flink流批一體架構,覆蓋Exactly-Once語義、自適應調優等生產級特性;模塊能力擴展:新增Hive與DataX多源異構數據倉庫構建、Flink SQL流批一體化開發、機器學習融合的推薦系統開發三大實戰模塊;技術棧升級:數據可視化采用SpringBoot和Vue前後端分離架構,替代傳統的Servlet、JSP方案,實現更高效的數據展示與交互設計。
本書既可以作為大數據工程師的開發手冊,也可以作為高校大數據及相關專業的教材。
大數據技術作為數字化轉型的核心驅動力,已深度融入金融、醫療、零售、智能制造等各個領域,重構著企業的決策模式與業務形態。通過高效處理海量、多源、異構數據,大數據技術不僅為企業提供了實時洞察能力,更在用戶畫像、智能推薦、風險預測等場景中展現出巨大價值,成為企業構築競爭壁壘的戰略性技術資產。
本書作為一本實用的大數據技術教程,以“數據采集-存儲-計算-應用”技術鏈路為主線,圍繞一個完整的新聞資訊大數據分析項目展開,系統講解Hadoop、Spark、Flink三大核心框架及其生態組件的實戰應用。本書在第1版的基礎上進行了全面的內容升級,改版升級包括以下三方面。
版本升級:Hadoop、Spark及Flink等核心技術版本升級到3.0或現行穩定版本。
項目增加:新增了大數據倉庫項目及個性化推薦項目。
技術更新:數據可視化項目由Servlet技術更新為SpringBoot和Vue技術來實現。
本書延續了第1版“場景驅動式”教學的特色:從離線分析到實時計算,從數據倉庫構建到推薦系統開發,最終實現數據可視化閉環。讀者不僅能掌握HDFS、YARN、HBase、Kafka、Hive、Spark、Flink等技術要點,更能獲得從0到1搭建企業級大數據平臺的完整項目經驗。
全書共9章,層層遞進構建知識體系:
第 1 章 大數據技術概述。解析大數據核心特征與平臺架構,剖析大數據工程師技能樹,並通過需求分析案例展示如何設計可擴展的大數據系統架構。
第 2 章 搭建IDEA開發環境及Linux虛擬機。詳解開發環境配置與虛擬化技術,為後續分布式集群搭建奠定基礎,培養讀者的跨平臺開發能力。
第 3 章 基於Hadoop構建大數據平臺。深入講解ZooKeeper、HDFS、YARN核心原理與集群部署,通過MapReduce編程實踐揭示分布式計算本質。
第 4 章 基於HBase和Kafka構建海量數據存儲與交換系統。對比行式與列式存儲差異,實現HBase集群搭建與Kafka消息隊列配置,解決高並發讀寫與實時數據流處理難題。
第 5 章 用戶行為離線分析—構建數據采集和分析平臺。集成Flume、DataX實現多源數據采集,基於Hive構建維度建模數據倉庫,完成海量數據的ETL(抽取、轉換、加載)與OLAP(在線分析處理)分析。
第 6 章 基於Spark的用戶行為實時分析。通過Spark Core、Spark Streaming、Spark SQL及Spark Structured Streaming四大模塊,實現批流一體處理,對比微批與持續處理模式的技術選型。
第 7 章 基於Flink的用戶行為實時分析。深入講解Flink核心架構、集群部署及實時計算,通過新聞資訊項目的實時分析場景,完整展現Flink在低延遲、高吞吐、精確狀態管理等方面的技術特性。
第 8 章 基於Flink的新聞資訊推薦系統。構建涵蓋召回、排序、調整的完整推薦鏈路,集成協同過濾與深度學習模型,實現新聞資訊項目個性化推薦。
第 9 章 新聞資訊系統數據可視化。采用SpringBoot和Vue實現前後端分離架構,通過ECharts完成多維數據可視化,並講解輕量化部署與性能優化策略。
通過以上內容,全書實現了以下三方面目標。
項目驅動學習:以新聞資訊分析系統貫穿全書,涵蓋13個核心組件部署與5大項目實戰案例。
技術縱深對比:對比MapReduce、Spark和Flink三代計算引擎,Hive、Spark SQL和Flink SQL三種查詢範式。
開發流程全覆蓋:從數據采集、存儲、計算到推薦系統與可視化展示,完整再現企業級開發流程。
除此之外,本書配套學習資源極為豐富,為讀者免費提供容量高達30GB的學習資料包,包含軟件安裝包、實驗數據集、配置文件、腳本文件及配套學習視頻,可供讀者更為系統、全面地學習大數據技術。讀者可通過掃碼關註“IT有得聊”公眾號,回覆獲取本書配套學習資源下載鏈接,或添加作者微信john_1125進行技術交流。
本書由楊俊、王年明、謝誌剛編著,楊俊主要負責編寫第1~7章,王年明主要負責編寫第9章,謝誌剛主要負責編寫第8章。
大數據技術生態日新月異,書中若有疏漏之處,懇請讀者通過出版社或作者渠道反饋意見,我們將通過在線資源持續更新前沿技術內容。希望本書能成為您通往大數據工程師之路的明燈,助力在數據洪流中乘風破浪!
作者簡介
楊俊,大數據架構師。大數據技術達人,Hadoop源碼級技術專家,擅長Hadoop、Spark、FIink等主流大數據生態技術。具有十
余年的大數據開發經驗,參與過十余個重量級大數據項目。曾任廣電數據咨詢公司大數據高級架構師,負責大數據平臺架構設計與實施,並構建企業級數據倉庫。暢銷書《Hadoop大數據技術基礎與應用》作者。51CTO知名培訓講師,擁有40余萬粉絲,具有豐富的大數據技術培訓經驗,為數十家企業、院校開展過大數據技術課程培訓。
目錄大綱
前言
第1章 大數據技術概述
1.1 什麼是大數據
1.2 大數據平臺架構
1.2.1 數據獲取
1.2.2 數據存儲
1.2.3 數據處理
1.2.4 交互式分析
1.2.5 機器學習與數據挖掘
1.2.6 資源管理
1.3 大數據工程師的技能樹
1.3.1 主流程序開發語言
1.3.2 大數據平臺的構建
1.3.3 大數據采集
1.3.4 大數據存儲與交換
1.3.5 大數據離線計算
1.3.6 大數據實時計算
1.3.7 大數據挖掘
1.4 大數據項目需求分析與架構設計
1.4.1 項目需求分析
1.4.2 系統整體架構設計
1.4.3 架構設計及數據流程設計
1.4.4 大數據平臺規劃
1.5 本章小結
第2章 搭建IDEA開發環境及Linux虛擬機
2.1 搭建IDEA開發環境
2.1.1 JDK的安裝與配置
2.1.2 Maven的安裝與配置
2.1.3 IDEA的安裝與配置
2.1.4 使用IDEA構建Maven項目
2.2 搭建Linux虛擬機
2.2.1 安裝Linux系統
2.2.2 配置Linux靜態IP
2.2.3 Linux主機名和IP映射
2.2.4 關閉Linux防火墻
2.2.5 創建Linux用戶和用戶組
2.2.6 LinuxSSH免密登錄
2.3 本章小結
第3章 基於Hadoop構建大數據平臺
3.1 ZooKeeper分布式協調服務
3.1.1 ZooKeeper架構設計及原理
3.1.2 ZooKeeper集群安裝前的準備工作
3.1.3 ZooKeeper集群的安裝部署
3.1.4 ZooKeepershell的操作
3.2 HDFS分布式文件系統
3.2.1 HDFS架構設計及原理
3.2.2 HDFS的高可用(HA)機制
3.2.3 HDFS聯邦機制
3.3 YARN資源管理系統
3.3.1 YARN架構設計及原理
3.3.2 MapReduceonYARN工作流程
3.3.3 YARN的容錯性
3.3.4 YARN的高可用(HA)機制
3.3.5 YARN的調度器及使用
3.4 Hadoop分布式集群的構建
3.4.1 HDFS分布式集群的構建
3.4.2 YARN分布式集群的構建
3.4.3 Hadoop集群運行測試
3.4.4 Hadoop集群調優
3.5 MapReduce分布式計算框架
3.5.1 MapReduce概述
3.5.2 MapReduce編程模型
3.5.3 MapReduce應用實例
3.5.4 WordCount代碼實現
3.6 本章小結
第4章 基於HBase和Kafka構建海量數據存儲與交換系統
4.1 構建HBase分布式實時數據庫
4.1.1 HBase概述
4.1.2 HBase架構設計
4.1.3 HBase分布式集群的構建
4.1.4 HBase性能調優
4.1.5 建立HBase新聞資訊業務表
4.2 搭建Kafka分布式消息系統
4.2.1 Kafka概述
4.2.2 Kafka架構設計
4.2.3 Kafka分布式集群的構建
4.2.4 Kafka集群監控
4.3 本章小結
第5章 用戶行為離線分析—構建數據采集和分析平臺
5.1 搭建Flume數據采集系統
5.1.1 Flume概述
5.1.2 Flume架構設計
5.1.3 Flume環境的搭建
5.1.4 構建Flume集群
5.2 使用Flume采集用戶行為數據
5.2.1 Flume與Kafka集成
5.2.2 Flume與HBase集成
5.2.3 Flume與Kafka、HBase集成
5.3 搭建Hive離線分析平臺
5.3.1 Hive概述
5.3.2 Hive架構設計
5.3.3 Hive的安裝部署
5.3.4 Hive與HBase集成
5.3.5 基於Hive的用戶行為數據離線分析
5.4 搭建DataX業務數據采集平臺
5.4.1 DataX簡介
5.4.2 DataX架構原理
5.4.3 DataX的安裝部署
5.4.4 DataXWeb的安裝部署
5.4.5 新聞資訊業務概述
5.4.6 新聞業務數據采集
5.5 基於Hive構建新聞資訊數據倉庫
5.5.1 數據倉庫概述
5.5.2 數據倉庫建模理論
5.5.3 數據倉庫設計及規範
5.5.4 項目需求分析及架構設計
5.5.5 搭建新聞資訊數據倉庫
5.5.6 報表數據導出
5.6 本章小結
第6章 基於Spark的用戶行為實時分析
6.1 Spark快速入門
6.1.1 Spark概述
6.1.2 Spark的極簡安裝
6.1.3 Spark實現WordCount
6.2 SparkCore的核心功能
6.2.1 Spark架構的原理
6.2.2 彈性分布式數據集(RDD)
6.2.3 Spark算子
6.2.4 PairRDD及算子
6.3 Spark分布式集群的構建
6.3.1 Spark的運行模式
6.3.2 Standalone模式集群的構建
6.3.3 SparkonYARN模式集群的構建
6.4 基於SparkStreaming的新聞資訊項目實時分析
6.4.1 SparkStreaming概述
6.4.2 SparkStreaming的運行原理
6.4.3 SparkStreaming編程模型
6.4.4 基於SparkStreaming的用戶行為實時分析
6.5 基於SparkSQL的新聞資訊項目離線分析
6.5.1 SparkSQL架構原理
6.5.2 SparkSQL與Hive、MySQL集成
6.5.3 SparkSQL用戶行為離線分析
6.6 基於SparkStructuredStreaming的新聞資訊項目實時分析
6.6.1 StructuredStreaming概述
6.6.2 St
