轉載來源 : https://www.cnblogs.com/zengkefu/p/5768874.html
分布式系統(Distributed System)資料
《Reconfigurable Distributed Storage for Dynamic Networks》
介紹:這是一篇介紹在動态網絡裡面實作分布式系統重構的paper.論文的作者(導師)是MIT讀博的時候是做分布式系統的研究的,現在在NUS帶學生,不僅僅是分布式系統,還有無線網絡.如果感興趣可以去他的首頁了解.
《Distributed porgramming liboratory》
介紹:分布式程式設計實驗室,他們發表的很多的paper,其中不僅僅是學術研究,還有一些工業界應用的論文.
《MIT Theory of Distributed Systems》
介紹:麻省理工的分布式系統理論首頁,作者南希·林奇在2002年證明了CAP理論,并且著《分布式算法》一書.
《Notes on Distributed Systems for Young Bloods》
介紹:分布式系統搭建初期的一些建議
《Principles of Distributed Computing》
介紹:分布式計算原理課程
《Google's Globally-Distributed Database》
介紹:Google全球分布式資料介紹
《The Architecture Of Algolia’s Distributed Search Network》
介紹:Algolia的分布式搜尋網絡的體系架構介紹
《Build up a High Availability Distributed Key-Value Store》
介紹:建構高可用分布式Key-Value存儲系統
《Distributed Search Engine with Nanomsg and Bond》
介紹:Nanomsg和Bond的分布式搜尋引擎
《Distributed Processing With MongoDB And Mongothon》
介紹:使用MongoDB和Mongothon進行分布式處理
《Salt: Combining ACID and BASE in a Distributed Database》
介紹:分布式資料庫中把ACID與BASE結合使用.
《Makes it easy to understand Paxos for Distributed Systems》
介紹:了解的Paxos的分布式系統,參考閱讀:關于Paxos的曆史
《There is No Now Problems with simultaneity in distributed systems》
介紹:There is No Now Problems with simultaneity in distributed systems
《Distributed Systems》
介紹:倫敦大學學院分布式系統課程課件.
《Distributed systems for fun and profit》
介紹:分布式系統電子書籍.
《Distributed Systems Spring 2015》
介紹:卡内基梅隆大學春季分布式課程首頁
《Distributed Systems: Concepts and Design (5th Edition)》
介紹: 電子書,分布式系統概念與設計(第五版)
《走向分布式》
介紹:這是一位台灣網友 ccshih 的文字,短短的篇幅介紹了分布式系統的若幹要點。pdf
《Introduction to Distributed Systems Spring 2013》
介紹:清華大學分布式系統課程首頁,裡面的schedule欄目有很多寶貴的資源
《Distributed systems》
介紹:免費的線上分布式系統書籍
《Some good resources for learning about distributed computing》
介紹:Quora上面的一篇關于學習分布式計算的資源.
《Spanner: Google’s Globally-Distributed Database》
介紹:這個是第一個全球意義上的分布式資料庫,也是Google的作品。其中介紹了很多一緻性方面的設計考慮,為了簡單的邏輯設計,還采用了原子鐘,同樣在分布式系統方面具有很強的借鑒意義.
《The Chubby lock service for loosely-coupled distributed systems》
介紹:Google的統面向松散耦合的分布式系統的鎖服務,這篇論文詳細介紹了Google的分布式鎖實作機制Chubby。Chubby是一個基于檔案實作的分布式鎖,Google的Bigtable、Mapreduce和Spanner服務都是在這個基礎上建構的,是以Chubby實際上是Google分布式事務的基礎,具有非常高的參考價值。另外,著名的zookeeper就是基于Chubby的開源實作.推薦The google stack,Youtube:The Chubby lock service for loosely-coupled distributed systems
《Sinfonia: a new paradigm for building scalable distributed systems》
介紹:這篇論文是SOSP2007的Best Paper,闡述了一種建構分布式檔案系統的範式方法,個人感覺非常有用。淘寶在建構TFS、OceanBase和Tair這些系統時都充分參考了這篇論文.
《Data-Intensive Text Processing with MapReduce》
介紹:Ebook:Data-Intensive Text Processing with MapReduce.
《Design and Implementation of a Query Processor for a Trusted Distributed Data Base Management System》
介紹:Design and Implementation of a Query Processor for a Trusted Distributed Data Base Management System.
《Distributed Query Processing》
介紹:分布式查詢入門.
《Distributed Systems and the End of the API》
介紹:分布式系統和api總結.
《Distributed Query Reading》
介紹:分布式系統閱讀論文,此外還推薦github上面的一個論文清單The Distributed Reader。
《Replication, atomicity and order in distributed systems》
介紹:Replication, atomicity and order in distributed systems
《MIT course:Distributed Systems》
介紹:2015年MIT分布式系統課程首頁,這次用Golang作為授課語言。6.824 Distributed Systems課程首頁
介紹:免費分布式系統電子書。
《Ori:A Secure Distributed File System》
介紹:斯坦福開源的分布式檔案系統。
《Availability in Globally Distributed Storage Systems》
介紹:Google論文:設計一個高可用的全球分布式存儲系統。
《Calvin: Fast Distributed Transactions For Partitioned Database Systems》
介紹:對于分區資料庫的分布式事務處理。
《Distributed Systems Building Block: Flake Ids》
介紹:Distributed Systems Building Block: Flake Ids.
《Introduction to Distributed System Design》
介紹:Google Code University課程,如何設計一個分布式系統。
《Sheepdog: Distributed Storage System for KVM》
介紹:KVM的分布式存儲系統.
《Readings in Distributed Systems Systems》
介紹:分布式系統課程清單,包括資料庫、算法等.
《Tera》
介紹:來自百度的分布式表格系統.
《Distributed systems: for fun and profit》
介紹:分布式系統的線上電子書.
《Distributed Systems Reading List》
介紹:分布式系統資料,此外還推薦Various articles about distributed systems.
《Designs, Lessons and Advice from Building Large Distributed Systems》
介紹:Designs, Lessons and Advice from Building Large Distributed Systems.
《Testing a Distributed System》
介紹:Testing a distributed system can be trying even under the best of circumstances.
《The Google File System》
介紹: 基于普通伺服器建構超大規模檔案系統的典型案例,主要面向大檔案和批處理系統, 設計簡單而實用。 GFS是google的重要基礎設施, 大資料的基石, 也是Hadoop HDFS的參考對象。 主要技術特點包括: 假設硬體故障是常态(容錯能力強), 64MB大塊, 單Master設計,Lease/鍊式複制, 支援追加寫不支援随機寫.
《Bigtable: A Distributed Storage System for Structured Data》
介紹:支援PB資料量級的多元非關系型大表, 在google内部應用廣泛,大資料的奠基作品之一 , Hbase就是參考BigTable設計。 Bigtable的主要技術特點包括: 基于GFS實作資料高可靠, 使用非原地更新技術(LSM樹)實作資料修改, 通過range分區并實作自動伸縮等.
《PacificA: Replication in Log-Based Distributed Storage Systems》
介紹:面向log-based存儲的強一緻的主從複制協定, 具有較強實用性。 這篇文章系統地講述了主從複制系統應該考慮的問題, 能加深對主從強一緻複制的了解程度。 技術特點: 支援強一緻主從複制協定, 允許多種存儲實作, 分布式的故障檢測/Lease/叢集成員管理方法.
《Object Storage on CRAQ, High-throughput chain replication for read-mostly workloads》
介紹:分布式存儲論文:支援強一直的鍊式複制方法, 支援從多個副本讀取資料,實作code.
《Finding a needle in Haystack: Facebook’s photo storage》
介紹:Facebook分布式Blob存儲,主要用于存儲圖檔. 主要技術特色:小檔案合并成大檔案,小檔案中繼資料放在記憶體是以讀寫隻需一次IO.
《Windows Azure Storage: A Highly Available Cloud Storage Service with Strong Consistency》
介紹: 微軟的分布式存儲平台, 除了支援類S3對象存儲,還支援表格、隊列等資料模型. 主要技術特點:采用Stream/Partition兩層設計(類似BigTable);寫錯(寫滿)就封存Extent,使得副本位元組一緻, 簡化了選主和恢複操作; 将S3對象存儲、表格、隊列、塊裝置等融入到統一的底層存儲架構中.
《Paxos Made Live – An Engineering Perspective》
介紹:從工程實作角度說明了Paxo在chubby系統的應用, 是了解Paxo協定及其應用場景的必備論文。 主要技術特點: paxo協定, replicated log, multi-paxo.參考閱讀:關于Paxos的曆史
《Dynamo: Amazon’s Highly Available Key-Value Store》
介紹:Amazon設計的高可用的kv系統,主要技術特點:綜和運用一緻性哈希,vector clock,最終一緻性建構一個高可用的kv系統, 可應用于amazon購物車場景.新内容來自分布式存儲必讀論文
《Efficient Replica Maintenance for Distributed Storage Systems》
介紹:分布式存儲系統中的副本存儲問題.
《PADS: A Policy Architecture for Distributed Storage Systems》
介紹:分布式存儲系統架構.
《The Chirp Distributed Filesystem》
介紹:開源分布式檔案系統Chirp,對于想深入研究的開發者可以閱讀文章的相關Papers.
《Time, Clocks, and the Ordering of Events in a Distributed System》
介紹:經典論文分布式時鐘順序的實作原理.
《Making reliable distributed systems in the presence of sodware errors》
介紹:面向軟體錯誤建構可靠的分布式系統,中文筆記.
《MapReduce: Simplified Data Processing on Large Clusters》
介紹:MapReduce:超大叢集的簡單資料處理.
《Distributed Computer Systems Engineering》
介紹:麻省理工的分布式計算課程首頁,裡面的ppt和閱讀清單很多幹貨.
《The Styx Architecture for Distributed Systems》
介紹:分布式系統Styx的架構剖析.
《What are some good resources for learning about distributed computing? Why?》
介紹:Quora上面的一個問答:有哪些關于分布式計算學習的好資源.
《RebornDB: The Next Generation Distributed Key-Value Store》
介紹:下一代分布式k-v存儲資料庫.
《Operating System Concepts Ninth Edition》
介紹:分布式系統歸根結底還是需要作業系統的知識,這是耶魯大學的作業系統概念書籍首頁,裡面有提供了第8版的線上電子版和最新的學習作業系統指南,學習分布式最好先學習作業系統.
《The Log: What every software engineer should know about real-time data's unifying abstraction》
介紹:分布式系統Log剖析,非常的詳細與精彩. 中文翻譯 | 中文版筆記.
《Operating Systems Study Guide》
介紹:分布式系統基礎之作業系統學習指南.
《分布式系統領域經典論文翻譯集》
介紹:分布式系統領域經典論文翻譯集.
《Maintaining performance in distributed systems》
介紹:分布式系統性能維護.
《Computer Science from the Bottom Up》
介紹:計算機科學,自底向上,小到機器碼,大到作業系統内部體系架構,學習作業系統的另一個線上好材料.
《Operating Systems: Three Easy Pieces》
介紹:<作業系統:三部曲>線上電子書,虛拟、并發、持續.
《Database Systems: reading list》
介紹:資料庫系統經典論文閱讀列,此外推送github上面的db reading.
《Unix System Administration》
介紹:Unix System Administration ebook.
《The Amoeba Distributed Operating System》
介紹:分布式系統經典論文.
《Principles of Computer Systems》
介紹:計算機系統概念,以分布式為主.此外推薦Introduction to Operating Systems筆記
《Person page of EMİN GÜN SİRER》
介紹:推薦康奈爾大學的教授EMİN GÜN SİRER的首頁,他的研究項目有分布式,資料存儲。例如HyperDex資料庫就是他的其中一個項目之一.
《Scalable, Secure, and Highly Available Distributed File Access》
介紹:來自卡内基梅隆如何建構可擴充的、安全、高可用性的分布式檔案系統,其他papers.
《Distributed (Deep) Machine Learning Common》
介紹:分布式機器學習常用庫.
《The Datacenter as a Computer》
介紹:介紹了如何建構倉儲式資料中心,尤其是對于現在的雲計算,分布式學習來說很有幫助.本書是Synthesis Lectures on Computer Architecture系列的書籍之一,這套叢書還有 《The Memory System》,《Automatic Parallelization》,《Computer Architecture Techniques for Power Efficiency》,《Performance Analysis and Tuning for General Purpose Graphics Processing Units》,《Introduction to Reconfigurable Supercomputing》 等
《helsinki:Distributed Systems Course slider》
介紹:來自芬蘭赫爾辛基的分布式系統課程課件:什麼是分布式,複制,一緻性,容錯,同步,通信.
《TiDB is a distributed SQL database》
介紹:分布式資料庫TiDB,Golang開發.
《S897: Large-Scale Systems》
介紹:課程資料:大規模系統.
《Large-scale L-BFGS using MapReduce》
介紹:使用MapReduce進行大規模分布式叢集環境下并行L-BFGS.
《Twitter是如何建構高性能分布式日志的》
介紹:Twitter是如何建構高性能分布式日志的.
《Distributed Systems: When Limping Hardware Is Worse Than Dead Hardware》
介紹:在分布式系統中某個元件徹底死了影響很小,但半死不活(網絡/磁盤),對整個系統卻是毀滅性的.
《Tera - 高性能、可伸縮的結構化資料庫》
介紹:來自百度的分布式資料庫.
《SequoiaDB is a distributed document-oriented NoSQL Database》
介紹:SequoiaDB分布式文檔資料庫開源.
《Readings in distributed systems》
介紹:這個網址裡收集了一堆各TOP大學分布式相關的課程.
《Paxos vs Raft》
介紹:這個網站是Raft算法的作者為教授Paxos和Raft算法做的,其中有兩個視訊連結,分别講上述兩個算法.參考閱讀:關于Paxos的曆史
《A Scalable Content-Addressable Network》
介紹:A Scalable Content-Addressable Network.
《500 Lines or Less》
介紹:這個項目其實是一本書( The Architecture of Open Source Applications)的源代碼附錄,是一堆大牛合寫的.
《MIT 6.824 Distributed System》
介紹:這隻是一個課程首頁,沒有上課的視訊,但是并不影響你跟着它上課:每一周讀兩篇課程指定的論文,讀完之後看lecture-notes裡對該論文内容的讨論,回答裡面的問題來加深了解,最後在課程lab裡把所看的論文實作。當你把這門課的作業刷完後,你會發現自己實作了一個分布式資料庫.
《HDFS-alike in Go》
介紹:使用go開發的分布式檔案系統.
介紹:Quora上關于學習分布式的資源問答.
《SeaweedFS is a simple and highly scalable distributed file system》
介紹:SeaweedFS是使用go開發的分布式檔案系統項目,代碼簡單,邏輯清晰.
《Codis - yet another fast distributed solution for Redis》
介紹:Codis 是一個分布式 Redis 解決方案, 對于上層的應用來說, 連接配接到 Codis Proxy 和連接配接原生的 Redis Server 沒有明顯的差別
《Paper: Coordination Avoidance In Distributed Databases By Peter Bailis》
介紹:Coordination Avoidance In Distributed Databases.
《從零開始寫分布式資料庫》
介紹:本文以TiDB 源碼為例.
《what we talk about when we talk about distributed systems》
介紹:分布式系統概念梳理,為分布式系統涉及的主要概念進行了梳理.
《Distributed locks with Redis》
介紹:使用Redis實作分布式鎖.
《CS244b: Distributed Systems》
介紹: 斯坦福2014年秋季分布式課程.
《RAMP Made Easy》
介紹: 分布式的“讀原子性”.
《Strategies and Principles of Distributed Machine Learning on Big Data》
介紹: 大資料分布式機器學習的政策與原理.
《Distributed Systems: What is the CAP theorem?》
介紹: 分布式CAP法則.
《How should I start to learn distributed storage system as a beginner?》
介紹: 新手如何步入分布式存儲系統.
《Cassandra - A Decentralized Structured Storage System》
介紹: 分布式存儲系統Cassandra剖析,推薦白皮書Introduction to Apache Cassandra.
《What is the best resource to learn about distributed systems?》
介紹: 分布式系統學習資源.
《What are some high performance TCP hacks?》
介紹: 一些高性能TCP黑客技巧.
介紹:分布式系統性能提升.
《A simple totally ordered broadcast protocol》
介紹:Benjamin Reed 和 Flavio P.Junqueira 所著論文,對Zab算法進行了介紹,zab算法是Zookeeper保持資料一緻性的核心,在國内有很多公司都使用zookeeper做為分布式的解決方案.推薦與此相關的一篇文章ZooKeeper’s atomic broadcast protocol: Theory and practice.
《zFS - A Scalable Distributed File System Using Object Disk》
介紹:可擴充的分布式檔案系統ZFS,The Zettabyte File System,End-to-end Data Integrity for File Systems: A ZFS Case Study.
《A Distributed Haskell for the Modern Web》
介紹:分布式Haskell在目前web中的應用.
《Reasoning about Consistency Choices in Distributed Systems》
介紹:POPL2016的論文,關于分布式系統一緻性選擇的論述,POPL所接受的論文,github上已經有人整理.
《Paxos Made Simple》
介紹:Paxos讓分布式更簡單.譯文.參考閱讀:關于Paxos的曆史
《Consensus Protocols: Paxos》
介紹:分布式系統一緻性協定:Paxos.參考閱讀:關于Paxos的曆史
《Consensus on Transaction Commit》
介紹:事務送出的一緻性探讨.
《The Part-Time Parliaments》
介紹:在《The Part-Time Parliament》中描述了基本協定的互動過程。在基本協定的基礎上完善各種問題得到了最終的議會協定。 為了讓人更容易了解《The Part-Time Parliament》中描述的Paxos算法,Lamport在2001發表了《Paxos Made Simple》,以更平直的口頭語言描述了Paxos,而沒有包含正式的證明和數學術語。《Paxos Made Simple》中,将算法的參與者更細緻的劃分成了幾個角色:Proposer、Acceptor、Learner。另外還有Leader和Client.參考閱讀:關于Paxos的曆史
《Paxos Made Practical》
介紹:看這篇論文時可以先看看了解Paxos Made Practical.
《PaxosLease: Diskless Paxos for Leases》
介紹:PaxosLease:實作租約的無盤Paxos算法,譯文.
《Paxos Made Moderately Complex》
介紹:Paxos算法實作,譯文,同時推薦42 Paxos Made Moderately Complex.
《Hadoop Reading List》
介紹:Hadoop學習清單.
《2010 NoSQL Summer Reading List》
介紹:NoSQL知識清單,裡面不僅僅包含了資料庫閱讀清單還包含了分布式系統資料.
《Raft: Understandable Distributed Consensus》
介紹:Raft可視化圖幫助了解分布式一緻性
《Etcd:Distributed reliable key-value store for the most critical data of a distributed system》
介紹:Etcd分布式Key-Value存儲引擎
《Understanding Availability》
介紹:了解peer-to-peer系統中的可用性究竟是指什麼.同時推薦基于 Peer-to-Peer 的分布式存儲系統的設計
《Process structuring, synchronization, and recovery using atomic actions》
介紹:經典論文
《Programming Languages for Parallel Processing》
介紹:并行處理的程式設計語音
《Analysis of Six Distributed File Systems》
介紹:此篇論文對HDFS,MooseFS,iRODS,Ceph,GlusterFS,Lustre六個存儲系統做了詳細分析.如果是自己研發對應的存儲系統推薦先閱讀此篇論文
《A Survey of Distributed File Systems》
介紹:分布式檔案系統綜述
《Concepts of Concurrent Programming》
介紹:并行程式設計的概念,同時推薦卡内基梅隆FTP
《Concurrency Control Performance Modeling:Alternatives and Implications》
介紹:并發控制性能模組化:選擇與意義
《Distributed Systems - Concepts and Design 5th Edition》
介紹:ebook分布式系統概念與設計
《分布式系統設計的形式方法》
介紹:分布式系統設計的形式方法
《互斥和選舉算法》
介紹:互斥和選舉算法
《Actors:A model Of Concurrent Cornputation In Distributed Systems》
《Security Engineering: A Guide to Building Dependable Distributed Systems》
介紹:如何建構一個安全可靠的分布式系統,About the Author,Bibliography:文獻資料,章節通路把連結最後的01換成01-27即可
《15-712 Advanced and Distributed Operating Systems》
介紹:卡内基梅隆大學的分布式系統博士生課程首頁,有很豐富的資料
《Dapper, Google's Large-Scale Distributed Systems Tracing Infrastructure》
介紹:Dapper,大規模分布式系統的跟蹤系統,譯文,譯文對照
《CS262a: Advanced Topics in Computer Systems》
介紹:伯克利大學計算機系統進階課程,内容有深度,涵蓋分布式,資料庫等内容
《Egnyte Architecture: Lessons Learned In Building And Scaling A Multi Petabyte Distributed System》
介紹:PB級分布式系統建構/擴充經驗
《CS162: Operating Systems and Systems Programming》
介紹:伯克利大學計算機系統課程:作業系統與系統程式設計
《MDCC: Multi-Data Center Consistency》
介紹:MDCC主要解決跨資料中心的一緻性問題中間件,一種新的協定
《Research at Google:Distributed Systems and Parallel Computing》
介紹:google公開對外發表的分布式系統與并行計算論文
《HDFS Architecture Guide》
介紹:分布式檔案系統HDFS架構
《ActorDB distributed SQL database》
介紹:分布式 Key/Value資料庫
《An efficient data location protocol for self-organizing storage clusters》
介紹:是著名的Ceph的負載平衡政策,文中提出的幾種政策都值得嘗試,比較贊的一點是可以對照代碼體會和實踐,如果你還需要了解可以看看Ceph:一個 Linux PB 級分布式檔案系統,除此以外,論文的引用部分也挺值得閱讀的,同時推薦Ceph: A Scalable, High-Performance Distributed File System
《A Self-Organizing Storage Cluster for Parallel Data-Intensive Applications》
介紹:Surrento的冷熱平衡政策就采用了延遲寫技術
《HBA: Distributed Metadata Management for Large Cluster-Based Storage Systems》
介紹:對于分布式存儲系統的中繼資料管理.
《Server-Side I/O Coordination for Parallel File Systems》
介紹:伺服器端的I/O協調并行檔案系統處理,網絡,檔案存儲等都會涉及到IO操作.不過裡面涉及到很多技巧性的思路在實踐時需要斟酌
《Distributed File Systems: Concepts and Examples》
介紹:分布式檔案系統概念與應用
《CSE 221: Graduate Operating Systems》
介紹:加利福尼亞大學的研究所學生作業系統課程首頁,論文很值得閱讀
《S4: Distributed Stream Computing Platform》
介紹:Yahoo出品的流式計算系統,目前最流行的兩大流式計算系統之一(另一個是storm),Yahoo的主要廣告計算平台
《Pregel: a system for large-scale graph processing》
介紹:Google的大規模圖計算系統,相當長一段時間是Google PageRank的主要計算系統,對開源的影響也很大(包括GraphLab和GraphChi)
《GraphLab: A New Framework for Parallel Machine Learning》
介紹:CMU基于圖計算的分布式機器學習架構,目前已經成立了專門的商業公司,在分布式機器學習上很有兩把刷子,其單機版的GraphChi在百萬次元的矩陣分解都隻需要2~3分鐘;
《F1: A Distributed SQL Database That Scales》
介紹:這篇論文是Google 2013年發表的,介紹了F1的架構思路,13年時就開始支撐Google的AdWords業務,另外兩篇介紹文章F1 - The Fault-Tolerant Distributed RDBMS Supporting Google's Ad Business .Google NewSQL之F1
《Cockroach DB:A Scalable, Survivable, Strongly-Consistent SQL Database》
介紹:CockroachDB :一個可伸縮的、跨地域複制的,且支援事務的資料存儲,InfoQ介紹,Design and Architecture of CockroachDb
《Multi-Paxos: An Implementation and Evaluation》
介紹:Multi-Paxos實作與總結,此外推薦Paxos/Multi-paxos Algorithm,Multi-Paxos Example,位址:ftp://ftp.cs.washington.edu/tr/2009/09/UW-CSE-09-09-02.PDF
《Zab: High-performance broadcast for primary-backup systems》
介紹:一緻性協定zab分析
《A Distributed Hash Table》
介紹:分布式雜湊演算法論文,擴充閱讀Introduction to Distributed Hash Tables,Distributed Hash Tables