大數據日知錄架構與算法

大數據日知錄架構與算法

《大數據日知錄 架構與算法》是2014年9月電子工業出版社出版的圖書,作者是張俊林。

基本介紹

  • 書名:大數據日知錄 架構與算法
  • 作者:張俊林
  • 出版社:電子工業出版社
  • 出版時間:2014年9月
  • 頁數:404 頁
  • 定價:69 元
  • 開本:16 開
  • 裝幀:平裝
  • ISBN:9787121241536
內容簡介,圖書目錄,作者簡介,

內容簡介

大數據是當前流行的熱點概念之一,其已由技術名詞衍生到對很多行業產生顛覆性影響的社會現象,作為明確的技術發展趨勢之一,基於大數據的各種新型產品必將會對每個人的日常生活產生日益重要的影響。
  張俊林著的這本《大數據日知錄:架構與算法》從架構與算法的角度全面梳理了大數據存儲與處理的相關技術。大數據技術具有涉及的知識點異常眾多且正處於快速演進發展過程中等特點,其技術點包括底層的硬體體系結構、相關的基礎理論、大規模數據存儲系統、分散式架構設計、各種不同套用場景下的差異化系統設計思路、機器學習與數據挖掘並行算法以及層出不窮的新架構、新系統等。本書對眾多紛繁蕪雜的相關技術文獻和系統進行了擇優汰劣並系統性地對相關知識分門別類地進行整理和介紹,將大數據相關技術分為大數據基礎理論、大數據系統體系結構、大數據存儲,以及包含批處理、流式計算、互動式數據分析、圖資料庫、並行機器學習的架構與算法以及增量計算等技術分支在內的大數據處理等幾個大的方向。通過這種體系化的知識梳理與講解,相信對於讀者整體和系統地了解、吸收和掌握相關的技術有很大的幫助與促進作用。

圖書目錄

第0 章 當談論大數據時我們在談什麼 1
0.1 大數據是什麼2
0.2 大數據之翼:技術范型轉換.4
0.3 大數據商業鍊金術6
0.4 “大數據”在路上.7
第1 章 數據分片與路由 9
1.1 抽象模型.10
1.2 哈希分片(HashPartition) 11
1.2.1 RoundRobin11
1.2.2 虛擬桶(VirtualBuckets) 12
1.2.3 一致性哈希(ConsistentHashing) .13
1.3 範圍分片(RangePartition) 18
參考文獻19
第2 章 數據複製與一致性20
2.1 基本原則與設計理念21
2.1.1 原教旨CAP 主義21
2.1.2 CAP 重裝上陣(CAPReloaded).23
2.1.3 ACID 原則.24
2.1.4 BASE 原則.24
2.1.5 CAP/ACID/BASE三者的關係.25
2.1.6 冪等性(Idempotent)26
2.2 一致性模型分類.26
2.2.1 強一致性27
2.2.2 最終一致性28
2.2.3 因果一致性.28
2.2.4 “讀你所寫”一致性29
2.2.5 會話一致性29
2.2.6 單調讀一致性30
2.2.7 單調寫一致性.30
2.3 副本更新策略.30
2.3.1 同時更新30
2.3.2 主從式更新.31
2.3.3 任意節點更新32
2.4 一致性協定.32
2.4.1 兩階段提交協定(Two-PhraseCommit,2PC)33
2.4.2 向量時鐘(VectorClock) 38
2.4.3 RWN 協定.40
2.4.4 Paxos 協定.42
2.4.5 Raft 協定.45
參考文獻49
第3 章 大數據常用的算法與數據結構51
3.1 布隆過濾器(BloomFilter) 51
3.1.1 基本原理.52
3.1.2 誤判率及相關計算52
3.1.3 改進:計數BloomFilter53
3.1.4 套用54
3.2SkipList55
3.3 LSM 樹58
3.4 Merkle 哈希樹(MerkleHash Tree) .62
3.4.1 Merkle 樹基本原理62
3.4.2 Dynamo 中的套用.63
3.4.3 比特幣中的套用63
3.5 Snappy 與LZSS 算法65
3.5.1 LZSS 算法.65
3.5.2Snappy67
3.6 Cuckoo 哈希(CuckooHashing) 67
3.6.1 基本原理.68
3.6.2 套用:SILT 存儲系統.68
參考文獻.70
第4 章 集群資源管理與調度.71
4.1 資源管理抽象模型.72
4.1.1 概念模型72
4.1.2 通用架構.73
4.2 調度系統設計的基本問題.74
4.2.1 資源異質性與工作負載異質性74
4.2.2 數據局部性(DataLocality) 75
4.2.3 搶占式調度與非搶占式調度.75
4.2.4 資源分配粒度(AllocationGranularity) .76
4.2.5 餓死(Starvation)與死鎖(Dead Lock)問題.76
4.2.6 資源隔離方法77
4.3 資源管理與調度系統范型.77
4.3.1 集中式調度器(MonolithicScheduler).78
4.3.2 兩級調度器(Two-LevelScheduler) .79
4.3.3 狀態共享調度器(Shared-StateScheduler) 79
4.4 資源調度策略.81
4.4.1 FIFO 調度策略81
4.4.2 公平調度器(FairScheduler)81
4.4.3 能力調度器(CapacityScheduler) 82
4.4.4 延遲調度策略(DelayScheduling)82
4.4.5 主資源公平調度策略(DominantResource Fair Scheduling).82
4.5 Mesos.84
4.6YARN87
參考文獻90
第5 章 分散式協調系統.91
5.1 Chubby 鎖服務.92
5.1.1 系統架構93
5.1.2 數據模型94
5.1.3 會話與KeepAlive 機制.95
5.1.4 客戶端快取.95
5.2 ZooKeeper96
5.2.1 體系結構.96
5.2.2 數據模型(DataModel) .97
5.2.3 API.98
5.2.4 ZooKeeper 的典型套用場景98
5.2.5 ZooKeeper 的實際套用.103
參考文獻.104
第6 章 分散式通信106
6.1 序列化與遠程過程調用框架107
6.1.1 ProtocolBuffer 與Thrift .108
6.1.2Avro.109
6.2 訊息佇列.110
6.2.1 常見的訊息佇列系統110
6.2.2 Kafka.111
6.3 套用層多播通信(Application-LevelMulti-Broadcast)114
6.3.1 概述.114
6.3.2 Gossip 協定.115
參考文獻118
第7 章 數據通道.120
7.1 Log 數據收集.120
7.1.1Chukwa121
7.1.2Scribe122
7.2 數據匯流排123
7.2.1Databus125
7.2.2 Wormhole.127
7.3 數據導入/導出.128
參考文獻.129
第8 章 分散式檔案系統131
8.1 Google 檔案系統(GFS) .132
8.1.1 GFS 設計原則.132
8.1.2 GFS 整體架構133
8.1.3 GFS 主控伺服器134
8.1.4 系統互動行為.136
8.1.5 Colossus137
8.2 HDFS138
8.2.1 HDFS 整體架構.139
8.2.2 HA 方案140
8.2.3 NameNode 聯盟143
8.3 HayStack 存儲系統145
8.3.1 HayStack 整體架構.146
8.3.2 目錄服務147
8.3.3 HayStack 快取.148
8.3.4 HayStack 存儲系統的實現.148
8.4 檔案存儲布局.150
8.4.1 行式存儲151
8.4.2 列式存儲.151
8.4.3 混合式存儲156
8.5 糾刪碼(ErasureCode).158
8.5.1 Reed-Solomon 編碼.159
8.5.2 LRC 編碼.164
8.5.3 HDFS-RAID 架構.166
參考文獻.166
第9 章 記憶體KV 資料庫.168
9.1 RAMCloud169
9.1.1 RAMCloud 整體架構169
9.1.2 數據副本管理與數據恢復170
9.2Redis172
9.3 MemBase.173
參考文獻175

作者簡介

張俊林,是技術書籍《這就是搜尋引擎:核心技術詳解》的作者,目前擔任暢捷通智慧型平台總監。在此之前,張俊林曾經在阿里巴巴搜尋技術中心、百度商務搜尋部鳳巢廣告平台以及新浪微博搜尋部及數據系統部擔任資深技術專家,新浪微博技術委員會成員,負責算法策略方向。張俊林還曾是智慧型信息聚合網站“玩聚網”的聯合創始人之一。他的研發興趣集中在:搜尋技術、推薦系統、社交挖掘、自然語言處理與大數據算法架構等方面,並在以上領域有多年工業界實踐經驗。張俊林本科畢業於天津大學管理學院,1999年至2004年在中科院軟體所直接攻讀博士學位,研究方向是信息檢索理論與自然語言處理,就學期間曾在ACL/COLING/IJCNLP等國際會議發表多篇學術論文,另外,他在此期間領導設計的搜尋系統曾在美國國防部DARPA主持的TREC第二屆高精度檢索系統評測中在17隻國際高水平研究團隊激烈競爭中勝出並取得綜合排名前列的優異成績。

相關詞條

熱門詞條

聯絡我們