《大數據技術入門到商業實戰Hadoop+Spark+Flink全解析》是2021年機械工業出版社出版的圖書。
基本介紹
- 中文名:大數據技術入門到商業實戰Hadoop+Spark+Flink全解析
- 作者:李偉傑//王超//李沙//劉雪松
- 出版時間:2021年
- 出版社:機械工業出版社
- ISBN:9787111686187
內容簡介,圖書目錄,
內容簡介
本書全面詳細地介紹了大數據生態系統中的主流技術。全書共10章,主要包括大數據生態系統概述、大數據採集技術、大數據存儲技術、大數據分析處理技術等內容,書中涵蓋了Hadoop、Hive、Hbase、Kafka、Spark、Flink等技術的原理和實踐,其中重點介紹了Hadoop技術、Spark技術及Flink技術。
本書詳細介紹了主流大數據技術框架的基本原理、環境搭建、操作使用和在典型行業中的具體套用,使讀者不僅能夠在巨觀上全面認知大數據生態系統,而且還能在微觀上深入理解大數據技術細節。
本書不僅適合大數據技術初學者閱讀,還可以幫助金融、電信、電商、能源、政府部門的大數據套用決策和技術人員,以及IT經理、CTO、CIO等快速學習大數據技術,並能作為大數據相關崗位培訓的教程。
圖書目錄
前言
●第1章初識大數據
1.1什麼是大數據
1.2大數據行業套用
1.3什麼是Hadoop
1.4Hadoop產生背景
1.5Hadoop的架構模組介紹
1.6Hadoop在大數據、雲計算中的
位置和關係
1.7國內外Hadoop套用案例介紹
1.8Hadoop生態圈以及各組成部分
簡介
1.9本章小結
●第2章Hadoop之分散式檔案系統
HDFS
2.1構建Hadoop集群
2.1.1集群簡介
2.1.2Hadoop集群部署
2.2Hadoop集群啟動和停止
2.2.1Hadoop集群啟動
2.2.2Hadoop集群停止
2.3HDFS的Shell命令行客戶端
操作
2.4HDFS的工作機制
2.4.1HDFS概述
2.4.2HDFS的重要特性
2.4.3HDFS寫數據流程
2.4.4HDFS讀數據流程
2.5NameNode和SecondaryNameNode
功能剖析
2.5.1NameNode與SecondaryNameNode
解析
2.5.2元數據的checkpoint的條件
2.5.3fsimage與edits詳解
2.5.4fsimage和edits檔案信息查看
2.6DataNode的工作機制及存儲
2.6.1DataNode工作機制
2.6.2數據完整性保證
2.6.3DataNode掉線判斷時限參數
2.7HDFS的安全模式
2.8本章小結
●第3章Hadoop之分散式計算
MapReduce
3.1MapReduce概述
3.1.1MapReduce介紹
3.1.2為什麼要使用MapReduce
3.2MapReduce框架結構及核心
運行機制
3.3MapReduce編程規範和示例
編寫
3.3.1編程規範
3.3.2MapReduce編程入門之
單詞計數
3.4MapTask數量及切片機制
3.4.1MapTask個數
3.4.2如何控制MapTask的個數
3.4.3Map並行度的經驗之談
3.5ReduceTask並行度的決定
3.6MapReduce中的combiner
3.7MapReduce中的Shuffle
3.7.1Map端
3.7.2Reduce端
3.7.3Shuffle小結
3.8MapReduce與Yarn
3.8.1Yarn概述
3.8.2Yarn的重要概念
3.9MapReduce在Yarn上運行
流程
3.9.1job 提交過程
3.9.2job 初始化過程
3.9.3Task 任務分配
3.9.4Task 任務執行
3.9.5運行進度與狀態更新
3.9.6job 完成
3.10實戰項目1:基於MapReduce
實現用戶流量分析
3.10.1需求描述
3.10.2需求分析
3.10.3開發實現
3.10.4提交任務
3.11本章小結
●第4章分散式協調服務
Zookeeper
4.1Zookeeper簡介
4.1.1Zookeeper是什麼
4.1.2Zookeeper常用套用場景
4.2Zookeeper集群部署
4.2.1Zookeeper集群角色
4.2.2Zookeeper集群安裝
4.3Zookeeper核心工作機制
4.3.1Zookeeper特性
4.3.2Zookeeper數據結構
4.3.3節點類型
4.4Zookeeper的Shell命令行
操作
4.4.1客戶端連線
4.4.2命令行操作
4.5項目實戰2:基於Zookeeper
實現伺服器上下線動態感知
4.5.1需求描述
4.5.2開發實現
4.6本章小結
●第5章分散式資料庫Hbase
5.1Hbase資料庫介紹
5.1.1Hbase簡介
5.1.2Hbase表的數據模型
5.2Hbase整體架構
5.3Hbase集群搭建
5.4Hbase的Shell命令演示
5.5Hbase的內部原理
5.5.1Hbase的存儲原理
5.5.2Hbase讀數據流程
5.5.3Hbase寫數據流程
5.6Hbase的Flush、compact
機制
5.6.1Flush觸發條件
5.6.2Flush的流程
5.6.3Compact合併機制
5.7Hbase表的預分區
5.8region合併
5.8.1region合併說明
5.8.2如何進行region合併
5.9Hbase表的rowkey設計
5.9.1rowkey長度原則
5.9.2rowkey散列原則
5.9.3rowkey原則
5.10Hbase表的熱點
5.10.1表的熱點描述
5.10.2熱點問題解決
5.11項目實戰3:基於MapReduce
實現數據入庫Hbase表中
5.11.1需求描述
5.11.2開發實現
5.12本章小結
●第6章數據倉庫Hive
6.1Hive基本概念
6.1.1Hive簡介
6.1.2Hive與傳統資料庫對比
6.2Hive的架構原理
6.3Hive的數據類型
6.4Hive的安裝部署
6.5Hive的互動方式
6.5.1Hive互動Shell
6.5.2Hive JDBC服務
6.5.3Hive的命令
6.6Hive的DDL操作
6.6.1資料庫的DDL操作
6.6.2表的DDL操作
6.7Hive的分區表
6.8Hive的靜態分區和動態
分區
6.8.1靜態分區
6.8.2動態分區
6.9Hive的數據導入
6.10Hive數據導出
6.11項目實戰4:基於Hive分析
用戶搜尋日誌數據
6.11.1需求描述
6.11.2數據格式
6.11.3開發實現
6.12本章小結
●第7章日誌採集框架Flume
7.1Flume介紹
7.1.1Flume概述
7.1.2Flume的優勢
7.1.3Flume的運行機制
7.1.4Flume採集系統結構圖
7.2Flume安裝部署
7.3Flume數據採集套用
7.3.1採集目錄到HDFS
7.3.2採集檔案到HDFS
7.4項目實戰5:Flume之靜態攔
截器的使用
7.4.1案例場景
7.4.2場景分析
7.4.3數據流程處理分析
7.4.4開發實現
7.5本章小結
●第8章分散式訊息系統Kafka
8.1Kafka概述
8.1.1Kafka定義
8.1.2Kafka的特性
8.1.3Kafka集群架構和角色
8.2Kafka集群安裝部署
8.3Kafka命令行的管理使用
8.4Kafka生產者和消費者的API
代碼開發
8.4.1生產者代碼開發
8.4.2消費者代碼開發
8.5Kafka分區策略
8.6為什麼Kafka速度那么快
8.7Kafka的檔案存儲機制
8.7.1檔案存儲概述
8.7.2Segment檔案
8.7.3Kafka如何快速查詢數據
8.7.4Kafka高效檔案存儲
設計特點
8.8consumer消費原理
8.8.1consumer與topic關係
8.8.2Offset管理
8.8.3coordinator工作機制
8.9項目實戰6: Kafka整合
Flume
8.9.1需求描述
8.9.2需求分析
8.9.3需求實現