大規模分布式存儲係統:原理解析與架構實戰

大規模分布式存儲係統:原理解析與架構實戰 pdf epub mobi txt 電子書 下載 2025

楊傳輝 著
圖書標籤:
  • 分布式存儲
  • 大規模存儲
  • 存儲係統
  • 架構設計
  • 原理分析
  • 數據存儲
  • 雲計算
  • 大數據
  • 技術實踐
  • 係統設計
想要找書就要到 新城書站
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
齣版社: 機械工業齣版社
ISBN:9787111430520
版次:1
商品編碼:11310547
品牌:機工齣版
包裝:平裝
叢書名: 大數據技術叢書
開本:16開
齣版時間:2013-09-01
用紙:膠版紙
頁數:304
正文語種:中文

具體描述

編輯推薦

  

阿裏巴巴高級技術專傢(OceanBase核心開發人員)撰寫,陽振坤、章文嵩、楊衛華、汪源、餘鋒(褚霸)、賴春波等來自阿裏、新浪、網易和百度的資深技術專傢聯袂推薦。
  係統講解構建大規模存儲係統的核心技術和原理,詳細分析Google、Microsoft和阿裏巴巴的大規模分布式存儲係統的原理。
  實戰性強,通過對阿裏巴巴的分布式數據庫OceanBase的實現細節進行深入分析,完整講解瞭大規模分布式存儲係統的架構方法與應用實踐。

內容簡介

  《大規模分布式存儲係統:原理解析與架構實戰》是分布式係統領域的經典著作,由阿裏巴巴高級技術專傢“阿裏日照”(OceanBase核心開發人員)撰寫,陽振坤、章文嵩、楊衛華、汪源、餘鋒(褚霸)、賴春波等來自阿裏、新浪、網易和百度的專業技術專傢聯袂推薦。理論方麵,不僅講解瞭大規模分布式存儲係統的核心技術和基本原理,而且對榖歌、微軟和阿裏巴巴等國際型大互聯網公司的大規模分布式存儲係統進行瞭分析;實戰方麵,首先通過對阿裏巴巴的分布式數據庫OceanBase的實現細節的深入剖析完整地展示瞭大規模分布式存儲係統的架構與設計過程,然後講解瞭大規模分布式存儲技術在雲計算和大數據領域的實踐與應用。
  《大規模分布式存儲係統:原理解析與架構實戰》內容分為四個部分:基礎篇--分布式存儲係統的基礎知識,包含單機存儲係統的知識,如數據模型、事務與並發控製、故障恢復、存儲引擎、壓縮/解壓縮等;分布式係統的數據分布、復製、一緻性、容錯、可擴展性等。範型篇--介紹榖歌、微軟、阿裏巴巴等知名互聯網公司的大規模分布式存儲係統架構,涉及分布式文件係統、分布式鍵值係統、分布式錶格係統以及分布式數據庫技術等。實踐篇--以阿裏巴巴的分布式數據庫OceanBase為例,詳細介紹分布式數據庫內部實現,以及實踐過程中的經驗。專題篇--介紹分布式係統的主要應用:雲存儲和大數據,這些是近年來的熱門領域,本書介紹瞭雲存儲平颱、技術與安全,以及大數據的概念、流式計算、實時分析等。




作者簡介

  楊傳輝,阿裏巴巴高級技術專傢,花名日照,OceanBase核心開發人員,對分布式係統的理論和工程實踐有深刻理解。曾在百度作為核心成員參與類MapReduce係統、類Bigtable係統和百度分布式消息隊列等底層基礎設施架構工作。熱衷於分布式存儲和計算係統設計,樂於分享,有技術博客NosqlNotes。

內頁插圖

精彩書評

  ★本書覆蓋的信息量及知識點非常全麵,是瞭解分布式存儲不可多得的書籍,對指導分布式領域開發也具有重要參考價值。
  —— 楊衛華,新浪微博首席架構師

  ★分布式存儲這個領域麵寬水深,無論是分布式理論、存儲還是案例,鋪開寫都是捲帙浩繁。本書一是勝在圍繞頗具廣泛實用價值的基於通用硬件構建大規模分布式存儲係統這一核心進行瞭很好的材料組織選取;二是勝在對OceanBase實現機製的深度剖析。本書作者是OceanBase的核心開發人員,對分布式存儲係統身體力行,自然有很多獨特的洞見。因此,本書實用性和獨特性俱佳,必須入手一讀。
  —— 汪源,網易杭州研究院副院長

  ★分布式係統固有的復雜性加上大規模存儲係統的工程挑戰,讓真正理解這個體係變得非常睏難。作者在相關領域擁有多年一綫開發經驗,從實踐工作中將相關知識萃取齣來,清晰地呈現給讀者。因此,我願意將此書推薦給真正想瞭解分布式存儲係統原理並勇於實踐的讀者。
  —— 餘鋒,阿裏巴巴專業技術專傢,花名褚霸

  ★作者先後在百度、阿裏巴巴等公司長期緻力於大規模存儲和分布式等技術的研究,對BigTable、Dynamo等業界知名存儲係統也有深入的瞭解,同時在Pyramid、OceanBase等係統的架構、設計和開發上有過大量的實踐工作。大規模存儲是互聯網和雲計算産業的基石,而作者的這些技術是能真正應用在工業係統中的。難能可貴的是,作者將這些技術細節和係統如此有條理地展現齣來,無論對大規模存儲和分布式領域的初學者還是進階者,都有巨大的幫助。
  —— 賴春波,百度架構師,分布式存儲技術負責人

目錄

前言

第1章 概述
1.1 分布式存儲概念
1.2 分布式存儲分類

第一篇 基礎篇

第2章 單機存儲係統
2.1 硬件基礎
2.1.1 CPU架構
2.1.2 IO總綫
2.1.3 網絡拓撲
2.1.4 性能參數
2.1.5 存儲層次架構
2.2 單機存儲引擎
2.2.1 哈希存儲引擎
2.2.2 B樹存儲引擎
2.2.3 LSM樹存儲引擎
2.3 數據模型
2.3.1 文件模型
2.3.2 關係模型
2.3.3 鍵值模型
2.3.4 SQL與NoSQL
2.4 事務與並發控製
2.4.1 事務
2.4.2 並發控製
2.5 故障恢復
2.5.1 操作日誌
2.5.2 重做日誌
2.5.3 優化手段
2.6 數據壓縮
2.6.1 壓縮算法
2.6.2 列式存儲

第3章 分布式係統
3.1 基本概念
3.1.1 異常
3.1.2 一緻性
3.1.3 衡量指標
3.2 性能分析
3.3 數據分布
3.3.1 哈希分布
3.3.2 順序分布
3.3.3 負載均衡
3.4 復製
3.4.1 復製的概述
3.4.2 一緻性與可用性
3.5 容錯
3.5.1 常見故障
3.5.2 故障檢測
3.5.3 故障恢復
3.6 可擴展性
3.6.1 總控節點
3.6.2 數據庫擴容
3.6.3 異構係統
3.7 分布式協議
3.7.1 兩階段提交協議
3.7.2 Paxos協議
3.7.3 Paxos與2PC
3.8 跨機房部署

第二篇 範型篇

第4章 分布式文件係統
4.1 Google文件係統
4.1.1 係統架構
4.1.2 關鍵問題
4.1.3 Master設計
4.1.4 ChunkServer設計
4.1.5 討論
4.2 Taobao File System
4.2.1 係統架構
4.2.2 討論
4.3 Facebook Haystack
4.3.1 係統架構
4.3.2 討論
4.4 內容分發網絡
4.4.1 CDN架構
4.4.2 討論

第5章 分布式鍵值係統
5.1 Amazon Dynamo
5.1.1 數據分布
5.1.2 一緻性與復製
5.1.3 容錯
5.1.4 負載均衡
5.1.5 讀寫流程
5.1.6 單機實現
5.1.7 討論
5.2 淘寶Tair
5.2.1 係統架構
5.2.2 關鍵問題
5.2.3 討論

第6章 分布式錶格係統
6.1 Google Bigtable
6.1.1 架構
6.1.2 數據分布
6.1.3 復製與一緻性
6.1.4 容錯
6.1.5 負載均衡
6.1.6 分裂與閤並
6.1.7 單機存儲
6.1.8 垃圾迴收
6.1.9 討論
6.2 Google Megastore
6.2.1 係統架構
6.2.2 實體組
6.2.3 並發控製
6.2.4 復製
6.2.5 索引
6.2.6 協調者
6.2.7 讀取流程
6.2.8 寫入流程
6.2.9 討論
6.3 Windows Azure Storage
6.3.1 整體架構
6.3.2 文件流層
6.3.3 分區層
6.3.4 討論

第7章 分布式數據庫
7.1 數據庫中間層
7.1.1 架構
7.1.2 擴容
7.1.3 討論
7.2 Microsoft SQL Azure
7.2.1 數據模型
7.2.2 架構
7.2.3 復製與一緻性
7.2.4 容錯
7.2.5 負載均衡
7.2.6 多租戶
7.2.7 討論
7.3 Google Spanner
7.3.1 數據模型
7.3.2 架構
7.3.3 復製與一緻性
7.3.4 TrueTime
7.3.5 並發控製
7.3.6 數據遷移
7.3.7 討論

第三篇 實踐篇

第8章 OceanBase架構初探
8.1 背景簡介
8.2 設計思路
8.3 係統架構
8.3.1 整體架構圖
8.3.2 客戶端
8.3.3 RootServer
8.3.4 MergeServer
8.3.5 ChunkServer
8.3.6 UpdateServer
8.3.7 定期閤並&數據分發
8.4 架構剖析
8.4.1 一緻性選擇
8.4.2 數據結構
8.4.3 可靠性與可用性
8.4.4 讀寫事務
8.4.5 單點性能
8.4.6 SSD支持
8.4.7 數據正確性
8.4.8 分層結構

第9章 分布式存儲引擎
9.1 公共模塊
9.1.1 內存管理
9.1.2 基礎數據結構
9.1.3 鎖
9.1.4 任務隊列
9.1.5 網絡框架
9.1.6 壓縮與解壓縮
9.2 RootServer實現機製
9.2.1 數據結構
9.2.2 子錶復製與負載均衡
9.2.3 子錶分裂與閤並
9.2.4 UpdateServer選主
9.2.5 RootServer主備
9.3 UpdateServer實現機製
9.3.1 存儲引擎
9.3.2 任務模型
9.3.3 主備同步
9.4 ChunkServer實現機製
9.4.1 子錶管理
9.4.2 SSTable
9.4.3 緩存實現
9.4.4 IO實現
9.4.5 定期閤並&數據分發
9.4.6 定期閤並限速
9.5 消除更新瓶頸
9.5.1 讀寫優化迴顧
9.5.2 數據旁路導入
9.5.3 數據分區

第10章 數據庫功能
10.1 整體結構
10.2 隻讀事務
10.2.1 物理操作符接口
10.2.2 單錶操作
10.2.3 多錶操作
10.2.4 SQL執行本地化
10.3 寫事務
10.3.1 寫事務執行流程
10.3.2 多版本並發控製
10.4 OLAP業務支持
10.4.1 並發查詢
10.4.2 列式存儲
10.5 特色功能
10.5.1 大錶左連接
10.5.2 數據過期與批量刪除

第11章 質量保證、運維及實踐
11.1 質量保證
11.1.1 RD開發
11.1.2 QA測試
11.1.3 試運行
11.2 使用與運維
11.2.1 使用
11.2.2 運維
11.3 應用
11.3.1 收藏夾
11.3.2 天貓評價
11.3.3 直通車報錶
11.4 最佳實踐
11.4.1 係統發展路徑
11.4.2 人員成長
11.4.3 係統設計
11.4.4 係統實現
11.4.5 使用與運維
11.4.6 工程現象
11.4.7 經驗法則

第四篇 專題篇

第12章 雲存儲
12.1 雲存儲的概念
12.2 雲存儲的産品形態
12.3 雲存儲技術
12.4 雲存儲的核心優勢
12.5 雲平颱整體架構
12.5.1 Amazon雲平颱
12.5.2 Google雲平颱
12.5.3 Microsoft雲平颱
12.5.4 雲平颱架構
12.6 雲存儲技術體係
12.7 雲存儲安全

第13章 大數據
13.1 大數據的概念
13.2 MapReduce
13.3 MapReduce擴展
13.3.1 Google Tenzing
13.3.2 Microsoft Dryad
13.3.3 Google Pregel
13.4 流式計算
13.4.1 原理
13.4.2 Yahoo S4
13.4.3 Twitter Storm
13.5 實時分析
13.5.1 MPP架構
13.5.2 EMC Greenplum
13.5.3 HP Vertica
13.5.4 Google Dremel
參考資料

精彩書摘

  第1章 概  述
  Google、Amazon、Alibaba等互聯網公司的成功催生瞭雲計算和大數據兩大熱門領域。無論是雲計算、大數據還是互聯網公司的各種應用,其後颱基礎設施的主要目標都是構建低成本、高性能、可擴展、易用的分布式存儲係統。
  雖然分布式係統研究瞭很多年,但是,直到近年來,互聯網大數據應用的興起纔使得它大規模地應用到工程實踐中。相比傳統的分布式係統,互聯網公司的分布式係統具有兩個特點:一個特點是規模大,另一個特點是成本低。不同的需求造就瞭不同的設計方案,可以這麼說,Google等互聯網公司重新定義瞭大規模分布式係統。本章介紹大規模分布式係統的定義與分類。
  1.1 分布式存儲概念
  大規模分布式存儲係統的定義如下:
  “分布式存儲係統是大量普通PC服務器通過Internet互聯,對外作為一個整體提供存儲服務。”
  分布式存儲係統具有如下幾個特性:
  可擴展。分布式存儲係統可以擴展到幾百颱甚至幾韆颱的集群規模,而且,隨著集群規模的增長,係統整體性能錶現為綫性增長。
  低成本。分布式存儲係統的自動容錯、自動負載均衡機製使其可以構建在普通PC機之上。另外,綫性擴展能力也使得增加、減少機器非常方便,可以實現自動運維。
  高性能。無論是針對整個集群還是單颱服務器,都要求分布式存儲係統具備高性能。
  易用。分布式存儲係統需要能夠提供易用的對外接口,另外,也要求具備完善的監控、運維工具,並能夠方便地與其他係統集成,例如,從Hadoop雲計算係統導入數據。
  分布式存儲係統的挑戰主要在於數據、狀態信息的持久化,要求在自動遷移、自動容錯、並發讀寫的過程中保證數據的一緻性。分布式存儲涉及的技術主要來自兩個領域:分布式係統以及數據庫,如下所示:
  數據分布:如何將數據分布到多颱服務器纔能夠保證數據分布均勻?數據分布到多颱服務器後如何實現跨服務器讀寫操作?
  一緻性:如何將數據的多個副本復製到多颱服務器,即使在異常情況下,也能夠保證不同副本之間的數據一緻性?
  容錯:如何檢測到服務器故障?如何自動將齣現故障的服務器上的數據和服務遷移到集群中其他服務器?
  負載均衡:新增服務器和集群正常運行過程中如何實現自動負載均衡?數據遷移的過程中如何保證不影響已有服務?
  事務與並發控製:如何實現分布式事務?如何實現多版本並發控製?
  易用性:如何設計對外接口使得係統容易使用?如何設計監控係統並將係統的內部狀態以方便的形式暴露給運維人員?
  壓縮/解壓縮:如何根據數據的特點設計閤理的壓縮/解壓縮算法?如何平衡壓縮算法節省的存儲空間和消耗的CPU計算資源?
  分布式存儲係統挑戰大,研發周期長,涉及的知識麵廣。一般來講,工程師如果能夠深入理解分布式存儲係統,理解其他互聯網後颱架構不會再有任何睏難。
  1.2 分布式存儲分類
  分布式存儲麵臨的數據需求比較復雜,大緻可以分為三類:
  非結構化數據:包括所有格式的辦公文檔、文本、圖片、圖像、音頻和視頻信息等。
  結構化數據:一般存儲在關係數據庫中,可以用二維關係錶結構來錶示。結構化數據的模式(Schema,包括屬性、數據類型以及數據之間的聯係)和內容是分開的,數據的模式需要預先定義。
  半結構化數據:介於非結構化數據和結構化數據之間,HTML文檔就屬於半結構化數據。它一般是自描述的,與結構化數據最大的區彆在於,半結構化數據的模式結構和內容混在一起,沒有明顯的區分,也不需要預先定義數據的模式結構。
  不同的分布式存儲係統適閤處理不同類型的數據,本書將分布式存儲係統分為四類:分布式文件係統、分布式鍵值(Key-Value)係統、分布式錶格係統和分布式數據庫。
  1.分布式文件係統
  互聯網應用需要存儲大量的圖片、照片、視頻等非結構化數據對象,這類數據以對象的形式組織,對象之間沒有關聯,這樣的數據一般稱為Blob(Binary Large Object,二進製大對象)數據。
  分布式文件係統用於存儲Blob對象,典型的係統有Facebook Haystack以及Taobao File System(TFS)。另外,分布式文件係統也常作為分布式錶格係統以及分布式數據庫的底層存儲,如榖歌的GFS (Google File System,存儲大文件)可以作為分布式錶格係統Google Bigtable的底層存儲,Amazon的EBS(Elastic Block Store,彈性塊存儲)係統可以作為分布式數據庫(Amazon RDS)的底層存儲。
  總體上看,分布式文件係統存儲三種類型的數據:Blob對象、定長塊以及大文件。在係統實現層麵,分布式文件係統內部按照數據塊(chunk)來組織數據,每個數據塊的大小大緻相同,每個數據塊可以包含多個Blob對象或者定長塊,一個大文件也可以拆分為多個數據塊,如圖1-1所示。分布式文件係統將這些數據塊分散到存儲集群,處理數據復製、一緻性、負載均衡、容錯等分布式係統難題,並將用戶對Blob對象、定長塊以及大文件的操作映射為對底層數據塊的操作。
  圖1-1 數據塊與Blob對象、定長塊、大文件之間的關係
  2.分布式鍵值係統
  分布式鍵值係統用於存儲關係簡單的半結構化數據,它隻提供基於主鍵的CRUD(Create/Read/Update/Delete)功能,即根據主鍵創建、讀取、更新或者刪除一條鍵值記錄。
  典型的係統有Amazon Dynamo以及Taobao Tair。從數據結構的角度看,分布式鍵值係統與傳統的哈希錶比較類似,不同的是,分布式鍵值係統支持將數據分布到集群中的多個存儲節點。分布式鍵值係統是分布式錶格係統的一種簡化實現,一般用作緩存,比如淘寶 Tair以及Memcache。一緻性哈希是分布式鍵值係統中常用的數據分布技術,因其被Amazon DynamoDB係統使用而變得相當有名。
  3.分布式錶格係統
  分布式錶格係統用於存儲關係較為復雜的半結構化數據,與分布式鍵值係統相比,分布式錶格係統不僅僅支持簡單的CRUD操作,而且支持掃描某個主鍵範圍。分布式錶格係統以錶格為單位組織數據,每個錶格包括很多行,通過主鍵標識一行,支持根據主鍵的CRUD功能以及範圍查找功能。
  分布式錶格係統藉鑒瞭很多關係數據庫的技術,例如支持某種程度上的事務,比如單行事務,某個實體組(Entity Group,一個用戶下的所有數據往往構成一個實體組)下的多行事務。典型的係統包括Google Bigtable以及Megastore,Microsoft Azure Table Storage,Amazon DynamoDB等。與分布式數據庫相比,分布式錶格係統主要支持針對單張錶格的操作,不支持一些特彆復雜的操作,比如多錶關聯,多錶聯接,嵌套子查詢;另外,在分布式錶格係統中,同一個錶格的多個數據行也不要求包含相同類型的列,適閤半結構化數據。分布式錶格係統是一種很好的權衡,這類係統可以做到超大規模,而且支持較多的功能,但實現往往比較復雜,而且有一定的使用門檻。
  4.分布式數據庫
  分布式數據庫一般是從單機關係數據庫擴展而來,用於存儲結構化數據。分布式數據庫采用二維錶格組織數據,提供SQL關係查詢語言,支持多錶關聯,嵌套子查詢等復雜操作,並提供數據庫事務以及並發控製。
  典型的係統包括MySQL數據庫分片(MySQL Sharding)集群,Amazon RDS以及Microsoft SQL Azure。分布式數據庫支持的功能最為豐富,符閤用戶使用習慣,但可擴展性往往受到限製。當然,這一點並不是絕對的。Google Spanner係統是一個支持多數據中心的分布式數據庫,它不僅支持豐富的關係數據庫功能,還能擴展到多個數據中心的成韆上萬颱機器。除此之外,阿裏巴巴OceanBase係統也是一個支持自動擴展的分布式關係數據庫。
  關係數據庫是目前為止最為成熟的存儲技術,它的功能極其豐富,産生瞭商業的關係數據庫軟件(例如Oracle,Microsoft SQL Server,IBM DB2,MySQL)以及上層的工具及應用軟件生態鏈。然而,關係數據庫在可擴展性上麵臨著巨大的挑戰。傳統關係數據庫的事務以及二維關係模型很難高效地擴展到多個存儲節點上,另外,關係數據庫對於要求高並發的應用在性能上優化空間較大。為瞭解決關係數據庫麵臨的可擴展性、高並發以及性能方麵的問題,各種各樣的非關係數據庫風起雲湧,這類係統成為NoSQL係統,可以理解為“Not Only SQL”係統。NoSQL係統多得讓人眼花繚亂,每個係統都有自己的獨到之處,適閤解決某種特定的問題。這些係統變化很快,本書不會嘗試去探尋某種NoSQL係統的實現,而是從分布式存儲技術的角度探尋大規模存儲係統背後的原理。
  ……

前言/序言

  隨著社交網絡、移動互聯網、電子商務等技術的不斷發展,互聯網的使用者貢獻瞭越來越多的內容。為瞭處理這些內容,每個互聯網公司在後端都有一套成熟的分布式係統用於數據的存儲、計算以及價值提取。Google是全球最大的互聯網公司,也是在分布式技術上相對成熟的公司,其公布的Google分布式文件係統GFS、分布式計算係統MapReduce、分布式錶格係統Bigtable都成為業界競相模仿的對象,最近公布的全球數據庫Spanner更是能夠支持分布在世界各地上百個數據中心的上百萬颱服務器。Google的核心技術正是後端這些處理海量數據的分布式係統。和Google類似,國外的微軟以及國內互聯網三巨頭阿裏巴巴、百度和騰訊的核心技術也是其後端的海量數據處理係統。
  本書的內容是介紹互聯網公司的大規模分布式存儲係統。與傳統的高端服務器、高端存儲器和高端處理器不同的是,互聯網公司的分布式存儲係統由數量眾多的、低成本和高性價比的普通PC服務器通過網絡連接而成。互聯網的業務發展很快,而且注重成本,這就使得存儲係統不能依靠傳統的縱嚮擴展的方式,即先買小型機,不夠時再買中型機,甚至大型機。互聯網後端的分布式係統要求支持橫嚮擴展,即通過增加普通PC服務器來提高係統的整體處理能力。普通PC服務器性價比高,故障率也高,需要在軟件層麵實現自動容錯,保證數據的一緻性。另外,隨著服務器的不斷加入,需要能夠在軟件層麵實現自動負載均衡,使得係統的處理能力得到綫性擴展。
  分布式存儲和當今同樣備受關注的雲存儲和大數據又是什麼關係呢?分布式存儲是基礎,雲存儲和大數據是構建在分布式存儲之上的應用。移動終端的計算能力和存儲空間有限,而且有在多個設備之間共享資源的強烈的需求,這就使得網盤、相冊等雲存儲應用很快流行起來。然而,萬變不離其宗,雲存儲的核心還是後端的大規模分布式存儲係統。大數據則更近一步,不僅需要存儲海量數據,還需要通過閤適的計算框架或者工具對這些數據進行分析,抽取其中有價值的部分。如果沒有分布式存儲,便談不上對大數據進行分析。仔細分析還會發現,分布式存儲技術是互聯網後端架構的“九陽神功”,掌握瞭這項技能,以後理解其他技術的本質會變得非常容易。
  分布式存儲技術如此重要,市麵上也有很多分布式係統相關的書籍。然而,這些書籍往往注重理論不重實踐,且所述理論也不太適閤互聯網公司的大規模存儲係統。這是因為,雖然分布式係統研究瞭很多年,但是大規模分布式存儲係統是在近幾年纔流行起來,而且起源於以Google為首的企業界而非學術界。筆者2007年年底加入百度公司,師從陽振坤老師,從事大規模分布式存儲的研究和實踐工作,曾經開發過類似GFS、MapReduce和Bigtable的分布式係統,後來轉戰阿裏巴巴繼續開發分布式數據庫OceanBase,維護分布式技術博客NosqlNotes。筆者在業餘時間閱讀並理解瞭絕大部分分布式係統原理和各大互聯網公司的係統範型相關論文,深知分布式存儲係統的復雜性,也能夠體會到廣大讀者渴望弄清楚分布式存儲技術本質和實現細節的迫切心情,因而集中精力編寫瞭這本書,希望對從事分布式存儲應用的技術人員有所裨益。
  本書的目標是介紹互聯網公司的大規模分布式存儲係統,共分為四篇:
  基礎篇。基礎知識包含兩個部分:單機存儲係統以及分布式係統。其中,單機存儲係統的理論基礎是數據庫技術,包括數據模型、事務與並發控製、故障恢復、存儲引擎、數據壓縮等;分布式係統涉及數據分布、復製、一緻性、容錯、可擴展性等分布式技術。另外,分布式存儲係統工程師還需要一項基礎訓練,即性能預估,因此,基礎篇也會順帶介紹硬件基礎知識以及性能預估方法。
  範型篇。這部分內容將介紹Google、微軟、阿裏巴巴等各大互聯網公司的大規模分布式存儲係統,分為四章:分布式文件係統、分布式鍵值係統、分布式錶格係統以及分布式數據庫。
  實踐篇。這部分內容將以筆者在阿裏巴巴開發的分布式數據庫OceanBase為例詳細介紹分布式數據庫內部實現以及實踐過程中的經驗總結。
  專題篇。雲存儲和大數據是近年來興起的兩大熱門領域,其底層都依賴分布式存儲技術,這部分將簡單介紹這兩方麵的基礎知識。
  本書適閤互聯網行業或者其他從事分布式係統實踐的工程人員,也適閤大學高年級本科生和研究生作為分布式係統或者雲計算相關課程的參考書籍。閱讀本書之前,建議首先理解分布式係統和數據庫相關基礎理論,接著閱讀第一篇。如果對各個互聯網公司的係統架構感興趣,可以選擇閱讀第二篇的某些章節;如果對阿裏巴巴OceanBase的架構設計和實現感興趣,可以順序閱讀第三篇。最後,如果對雲存儲或者大數據感興趣,可以選擇閱讀第四篇的某個章節。
  感謝陽振坤老師多年以來對我在雲計算和分布式數據庫這兩個領域的研究實踐工作的指導和鼓勵。感謝在百度以及阿裏巴巴與我共事多年的兄弟姐妹,我們患難與共,一起實現共同的夢想。感謝機械工業齣版社的吳怡編輯、新浪微博的楊衛華先生、百度的侯震宇先生以及支付寶的童傢旺先生在本書撰寫過程中提齣的寶貴意見。
  楊傳輝
  2013年7月於北京



用戶評價

評分

書質量還可以。沒有錯張和印刷模糊。字體比較清晰。

評分

沒講到ceph,有點失望,湊閤看看吧!

評分

據說是經典書籍,還沒有看

評分

書還不錯,迴頭再自習看看,618買的挺值得。

評分

前麵 100 網頁全都是原理類, 通常概念類的東西, 後麵 100 多頁都 tm 是講分布數據庫的.真 tm 浪費讀者時間.不要迷信阿裏之類啊.說好的講分布文件存儲係統啦....都 tm 數據庫啊

評分

不錯,京東值得信賴

評分

正版圖書,質量有保證。希望有不小收獲。

評分

不錯。有助於多原理的理解

評分

挺好的

相關圖書

本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.cndgn.com All Rights Reserved. 新城书站 版權所有