分布式存儲必讀論文
分布式存儲泛指存儲存儲和管理數據的系統, 與無狀態的應用服務器不同, 如何處理各種故障以保證數據一致,數據不丟, 數據持續可用, 是分布式存儲系統的核心問題,也是極具挑戰的問題。 本文總結了分布式存儲領域的經典論文, 供大家參考。
The Google File System. Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung。 基于普通服務器構建超大規模文件系統的典型案例,主要面向大文件和批處理系統, 設計簡單而實用。 GFS是google的重要基礎設施, 大數據的基石, 也是Hadoop HDFS的參考對象。 主要技術特點包括: 假設硬件故障是常態(容錯能力強), 64MB大塊, 單Master設計,Lease/鏈式復制, 支持追加寫不支持隨機寫。
Bigtable: A Distributed Storage System for Structured Data. Fay Chang, Jeffrey Dean, Sanjay Ghemawat, et. 支持PB數據量級的多維非關系型大表, 在google內部應用廣泛,大數據的奠基作品之一 , Hbase就是參考BigTable設計。 Bigtable的主要技術特點包括: 基于GFS實現數據高可靠, 使用非原地更新技術(LSM樹)實現數據修改, 通過range分區并實現自動伸縮等。
Spanner: Google’s Globally-Distributed Database. James C. Corbett, Jeffrey Dean, et. 第一個用于線上產品的大規模、高可用, 跨數據中心且支持事務的分布式數據庫。 主要技術特點包括, 基于GPS和原子鐘的全球同步時間機制TrueTime, Paxo, 多版本事務等。
PacificA: Replication in Log-Based Distributed Storage Systems. Wei Lin, Mao Yang, et. 面向log-based存儲的強一致的主從復制協議, 具有較強實用性。 這篇文章系統地講述了主從復制系統應該考慮的問題, 能加深對主從強一致復制的理解程度。 技術特點: 支持強一致主從復制協議, 允許多種存儲實現, 分布式的故障檢測/Lease/集群成員管理方法。
Object Storage on CRAQ, High-throughput chain replication for read-mostly workloads. Jeff Terrace and Michael J. Freedman. 支持強一直的鏈式復制方法, 支持從多個副本讀取數據。
Ceph: Reliable, Scalable, and High-Performance Distributed Storage. Sage A. Weil. 功能強大的開源海量存儲系統, 支持文件系統、塊設備、以及S3接口。 主要技術特色: CRUSH數據對象定位算法, 基于動態子樹的文件系統元數據管理。
Finding a needle in Haystack: 非死book’s photo storage. Doug Beaver, Sanjeev Kumar, Harry C. Li, Jason Sobel, Peter Vajgel. 非死book分布式Blob存儲, 主要用于存儲圖片。 主要技術特色: 小文件合并成大文件, 小文件元數據放在內存因此讀寫只需一次IO。
Windows Azure Storage: A Highly Available Cloud Storage Service with Strong Consistency. Brad Calder, Ju Wang, Aaron Ogus, Niranjan Nilakantan, et. 微軟的分布式存儲平臺, 除了支持類S3對象存儲,還支持表格、隊列等數據模型。 主要技術特點: 采用Stream/Partition兩層設計(類似BigTable);寫錯(寫滿)就封存Extent, 使得副本字節一致, 簡化了選主和恢復操作; 將S3對象存儲、表格、隊列、塊設備等融入到統一的底層存儲架構中。
The Chubby lock service for loosely-coupled distributed systems. Mike Burrows. Google設計的高可用、可靠的分布式鎖服務, 可用于實現選主、分布式鎖等功能, 是ZooKeeper的原型。 主要技術特點: 將paxo協議封裝成文件系統接口, 高可用、高可靠,但是不保證有很強性能。
Paxos Made Live – An Engineering Perspective. Tushar Chandra, Robert Griesemer,Joshua Redstone. 從工程實現角度說明了Paxo在chubby系統的應用, 是理解Paxo協議及其應用場景的必備論文。 主要技術特點: paxo協議, replicated log, multi-paxo。
Dynamo: Amazon’s Highly Available Key-Value Store。 Giuseppe DeCandia, Deniz Hastorun, Madan Jampani, et. Amazon設計的高可用的kv系統, 主要技術特點:綜和運用一致性哈希,vector clock, 最終一致性構建一個高可用的kv系統, 可應用于amazon購物車場景。
來自:http://50vip.com/423.html