企業大數據處理:Spark、Druid、Flume與Kafka應用實踐(BigData Processing with Spark,Druid,Flume and Kafka) 企业大数据处理:Spark、Druid、Flume与Kafka应用实践

肖冠宇

下單後立即進貨 (4週~6週)

買這商品的人也買了...

商品描述

本書分為三大部分,共九章。第壹部分(第1章)主要介紹了企業大數據系統的前期準備工作,包括如何構建企業大數據處理系統的軟件環境和集群環境。第二部分(第2~7章)首先介紹了Spark的基本原理,Spark2.0版本的SparkSQL、StructuredStreaming原理和使用方法,以及Spark的多種優化方式;然後,介紹了Druid的基本原理、集群的搭建過程、數據攝入過程,以及在查詢過程中如何實現Druid查詢API;接著介紹了日誌收集系統Flume的基本架構和關鍵組件,以及分層日誌收集架構的設計與實踐;後介紹了分佈式消息隊列Kafka的基本架構和集群搭建過程,以及使用Java語言實現客戶端API的詳細過程。第三部分(第8~9章)主要介紹了企業大數據處理的兩個實際應用案例,分別是基於Druid構建多維數據分析平臺和基於JMX指標的監控系統。

作者簡介

肖冠宇

目前就職於樂視網智能中心大數據部,曾就職於人民在線大數據團隊,主要進行廣告數據分析、大數據產品研發等工作,具有多年大數據產品研發、高性能分佈式框架、實時計算等經驗,對整個Hadoop生態系統的各項技術都非常了解,有豐富的實踐經驗。

目錄大綱

前言

第一部分準備工作
第1章基礎環境準備2 
1.1軟件環境準備2 
1.2集群環境準備4 
1.2.1Zookeeper集群部署4 
1.2.2Hadoop部署6 
1.3小結15 

第二部分核心技術
第2章Spark詳解18 
2.1Spark概述18 
2.1.1Spark概述18 
2.1.2Shuff?le詳解25 
2.2SparkSQL29 
2.2.1SparkSession29 
2.2.2DataFrame30 
2.2.3DataSet35 
2.3Structured Streaming35 
2.3.1數據源36 
2.3.2輸出到外部存儲38 
2.3.3WordCount示例40 
2.4Spark優化42 
2.4.1數據優化42 
2.4.2代碼優化44 
2.4.3參數優化46 
2.5小結48 

第3章Druid原理及部署49 
3.1架構設計49 
3.1.1節點類型49 
3.1.2Segment介紹57 
3.1.3容錯處理59 
3.1.4路由節點60
3.2集群部署63 
3.2.1集群規劃63 
3.2.2配置安裝64 
3.3小結72 

第4章Druid數據攝入73 
4.1模式設計73 
4.1.1設計概述73 
4.1.2數據解析75 
4.1.3Segment分區79 
4.1. 4模式更改81 
4.2批量數據攝入81 
4.3流數據攝入87 
4.3.1Tranquility88 
4.3.2StreamPush91 
4.3.3從Kafka中攝取數據92 
4.4數據更新94 
4.5小結95 

第5章Druid客戶端96 
5.1涉及組件96 
5.1 .1查詢相關96 
5.1.2過濾器99 
5.1.3聚合粒度101 
5.1.4聚合器105 
5.2查詢類型109 
5.2.1時間序列查詢109 
5.2.2TopN查詢111 
5.2.3分組查詢113 
5.2.4元數據查詢117 
5.2.5搜索查詢121 
5.3查詢API125 
5.3.1RESTful介紹125 
5.3.2Jersey客戶端126 
5.4小結129 

第6章日誌收集130
6.1Flume介紹130 
6.1.1基本架構131 
6.2Flume應用實踐144 
6.2.1攔截器、選擇器實踐144 
6.2.2負載均衡、故障轉移實踐149 
6.2.3設計與實踐150 
6.3小結154 

第7章分佈式消息隊列155 
7.1Kafka介紹155 
7.1.1基本架構155 
7.1.2高吞吐的實現157 
7.1.3高可用的實現160 
7.2安裝部署161 
7.2.1Broker配置參數161 
7.2.2分佈式部署162 
7.3客戶端API163 
7.3.1Producer API164 
7.3.2Consumer API165 
7.4小結169 

第三部分項目實踐
第8章數據平台172 
8.1需求分析172 
8.2功能實現173 
8.2.1架構設計173 
8.2.2關鍵功能實現175 
8.3小結184 

第9章監控系統185 
9.1InfluxDB185 
9.1.1InfluxDB簡介186 
9.1.2InfluxDB安裝186 
9.1.3InfluxDB操作188 
9.1.4InfluxDB客戶端191
9.2JMXTrans192 
9.2.1JMXTrans介紹192 
9.2.2JMXTrans安裝194 
9.2.3JMXTrans使用195 
9.3Grafana198 
9.3.1Grafana安裝198 
9.3.2Grafana使用199 
9.4小結208