本書從大數據架構的角度解析大數據技術及算法,探討大數據的發展和趨勢。不僅對大數據相關技術及算法做了系統性的分析和描述,梳理了大數據的技術分類,如基礎架構支持、大數據采集、大數據存儲、大數據處理、大數據展示及交互,還融合了大數據行業的技術進展和大型互聯網公司的大數據架構實踐,努力為讀者提供一個大數據的全景畫卷。
本書從大數據架構的角度解析大數據技術及算法,探討大數據的發展和趨勢,介紹大數據的相關技術、算法和應用場景,幫助讀者培養大數據的技術選型和系統架構能力。
趙勇,清華蘇研院大數據處理中心副主任,聚云浩海(蘇州)信息科技有限公司技術總監,現任中國計算機學會大數據專家委員會委員,是大數據專委會首批委員。 美國芝加哥大學博士,師從世界網格之父Ian Foster教授,其間在美國IBM研發中心、美國Argonne國家實驗室實習。出版暢銷書
第1章大數據技術概述
1.1大數據的概念
1.2大數據的行業價值
1.3大數據問題的爆發
1.4大數據處理流程
1.5大數據技術
1.5.1基礎架構支持
1.5.2數據采集
1.5.3數據存儲
1.5.4數據計算
1.5.5展現與交互
1.6練習題
參考文獻
第2章大數據基礎支撐--數據中心及云計算
2.1數據中心概述
2.1.1云計算時代數據中心面臨的問題
2.1.2新一代數據中心關鍵技術
2.1.3業界發展動態
2.1.4小結
2.2云計算簡介
2.2.1云計算定義
2.2.2云計算主要特征
2.2.3Web服務、網格和云計算
2.2.4云計算應用分類
2.2.5小結
2.3大數據與云計算的關系
2.3.1大數據是信息技術發展的必然階段
2.3.2云計算等新興信息技術正在真正地落地和實施
2.3.3云計算等新興技術是解決大數據問題的核心關鍵
2.4云資源調度與管理
2.4.1云資源管理
2.4.2云資源調度策略
2.4.3云計算數據中心負載均衡調度
2.5開源云管理平臺OpenStack
2.5.1OpenStack的構成
2.5.2OpenStack各組件之間的關系
2.5.3OpenStack的邏輯架構
2.5.4小結
2.6軟件定義網絡
2.6.1起源與發展
2.6.2OpenFlow標準和規范
2.6.3OpenFlow的應用
2.7虛擬機與容器
2.7.1VM虛擬化與Container虛擬化
2.7.2Docker
2.8練習題
參考文獻
第3章云計算先行者--Google的三駕馬車
3.1Google的三駕馬車
3.1.1GFS--一個可擴展的分布式文件系統
3.1.2MapReduce--一種并行計算的編程模型
3.1.3BigTable--一個分布式數據存儲系統
3.2Google新"三駕馬車"
3.2.1Caffeine--基于Percolator的搜索索引系統
3.2.2Pregel--高效的分布式圖計算的計算框架
3.2.3Dremel--大規模數據的交互式數據分析系統
3.3練習題
參考文獻
第4章云存儲系統
4.1云存儲的基本概念
4.1.1云存儲結構模型
4.1.2云存儲與傳統存儲系統的區別
4.2云存儲關鍵技術
4.2.1存儲虛擬化技術
4.2.2分布式存儲技術
4.3云存儲系統分類
4.3.1分布式文件存儲
4.3.2分布式塊存儲
4.3.3分布式對象存儲
4.3.4統一存儲
4.4其他相關技術
4.5練習題
參考文獻
第5章數據采集系統
5.1Flume
5.1.1Flume架構
5.1.2Flume核心組件
5.1.3Flume環境搭建與部署
5.2Scribe
5.2.1Scribe架構
5.2.2Scribe中的Store
5.2.3Scribe環境搭建與部署
5.3Chukwa
5.3.1Chukwa的設計目標
5.3.2Chukwa架構
5.3.3Chukwa環境搭建與部署
5.4Kafka
5.4.1Kafka架構
5.4.2Kafka存儲
5.4.3Kafka的特點
5.4.4Kafka環境搭建與部署
5.5練習題
參考文獻
第6章Hadoop與MapReduce
6.1Hadoop平臺
6.1.1Hadoop概述
6.1.2Hadoop的發展簡史
6.1.3Hadoop的功能和作用
6.1.4HDFS
6.1.5HBase
6.2MapReduce
6.2.1及時代MapReduce(MRv1)
6.2.2MapReduce2.0--Yarn
6.3Hadoop相關生態系統
6.3.1交互式數據查詢分析
6.3.2數據收集、轉換工具
6.3.3機器學習工具
6.3.4集群管理與監控
6.3.5其他工具
6.4Hadoop應用案例
6.5練習題
參考文獻
第7章Spark--大數據統一計算平臺
7.1Spark簡介
7.1.1Spark
7.1.2BDAS
7.2RDD
7.2.1RDD基本概念
7.2.2RDD示例
7.2.3RDD與分布式共享內存
7.3SparkSQL
7.4MLlib
7.5GraphX
7.6SparkStreaming
7.6.1基本概念
7.6.2編程模型
7.7Spark的安裝
7.7.1單機運行Spark
7.7.2使用SparkShell與Spark交互
7.8Shark、Impala、Hive對比
7.9練習題
參考文獻
第8章Storm流計算系統
8.1流計算系統
8.1.1流計算系統的特點
8.1.2流計算處理基本流程
8.2Storm流計算框架
8.2.1Storm簡介
8.2.2Storm關鍵術語
8.2.3Storm架構設計
8.3Storm編程實例
8.4Storm應用
8.4.1Storm應用場景
8.4.2Storm應用實例
8.5其他流計算框架
8.6練習題
參考文獻
第9章SQL、NoSQL與NewSQL
9.1傳統SQL數據庫
9.1.1關系模型
9.1.2關系型數據庫的優點
9.1.3關系型數據庫面臨的問題
9.2NoSQL
9.2.1NoSQL與大數據
9.2.2NoSQL理論基礎
9.2.3分布式模型
9.2.4NoSQL數據庫分類
9.3NewSQL
9.3.1系統分類
9.3.2GoogleSpanner
9.3.3MemSQL
9.3.4VoltDB
9.4練習題
參考文獻
第10章大數據與數據挖掘
10.1數據挖掘的主要功能和常用算法
10.1.1數據挖掘的主要功能
10.1.2常用算法
10.2大數據時代的數據挖掘
10.2.1傳統數據挖掘解決方案
10.2.2分布式數據挖掘解決方案
10.3數據挖掘相關工具
10.3.1Mahout
10.3.2語言工具--Python
10.4數據挖掘與R語言
10.4.1R語言簡介
10.4.2R語言在數據挖掘上的應用
10.5練習題
參考文獻
第11章深度學習
11.1深度學習介紹
11.1.1深度學習的概念
11.1.2深度學習的結構
11.1.3從機器學習到深度學習
11.2深度學習基本方法
11.2.1自動編碼器
11.2.2稀疏編碼
11.3深度學習模型
11.3.1深度置信網絡
11.3.2卷積神經網絡
11.4深度學習的訓練加速
11.4.1GPU加速
11.4.2數據并行
11.4.3模型并行
11.4.4計算集群
11.5深度學習應用
11.5.1Google
11.5.2百度
11.5.3騰訊Mariana
11.6練習題
參考文獻
第12章電子商務與社會化網絡大數據分析
12.1推薦系統簡介
12.1.1推薦系統的評判標準
12.1.2推薦系統的分類
12.1.3在線推薦系統常用算法介紹
12.1.4相關算法知識
12.2計算廣告
12.2.1計算廣告簡介
12.2.2計算廣告發展階段
12.2.3計算廣告相關算法
12.2.4計算廣告與大數據
12.2.5大數據在計算廣告中的應用案例
……
第13章大數據展示與交互技術
第14章大數據安全與隱私
第15章大數據技術發展趨勢
第16章知名企業大數據架構簡介
參考文獻