|
|
@@ -0,0 +1,274 @@ |
|
|
##分布式系统(Distributed System)资料 |
|
|
|
|
|
--- |
|
|
#####希望转载的朋友,你可以不用联系我.但是**一定要保留原文链接**,因为这个项目还在继续也在不定期更新.希望看到文章的朋友能够学到更多. |
|
|
--- |
|
|
|
|
|
* [《Reconfigurable Distributed Storage for Dynamic Networks》](http://www.comp.nus.edu.sg/~gilbert/pubs/rds-OPODIS05.pdf) |
|
|
|
|
|
介绍:这是一篇介绍在动态网络里面实现分布式系统重构的paper.论文的作者(导师)是MIT读博的时候是做分布式系统的研究的,现在在NUS带学生,不仅仅是[分布式系统](http://www.comp.nus.edu.sg/~gilbert/biblio-projects.html#rambo),还有无线网络.如果感兴趣可以去他的主页了解. |
|
|
|
|
|
* [《Distributed porgramming liboratory》](http://lpd.epfl.ch/site) |
|
|
|
|
|
介绍:分布式编程实验室,他们发表的很多的[paper](http://lpd.epfl.ch/site/Publications),其中不仅仅是学术研究,还有一些工业界应用的论文. |
|
|
|
|
|
* [《MIT Theory of Distributed Systems》](http://groups.csail.mit.edu/tds/) |
|
|
|
|
|
介绍:麻省理工的分布式系统理论主页,作者南希·林奇在2002年证明了[CAP理论](http://zh.wikipedia.org/wiki/CAP%E5%AE%9A%E7%90%86),并且著《分布式算法》一书. |
|
|
|
|
|
* [《Notes on Distributed Systems for Young Bloods》](http://www.somethingsimilar.com/2013/01/14/notes-on-distributed-systems-for-young-bloods/) |
|
|
|
|
|
介绍:分布式系统搭建初期的一些建议 |
|
|
|
|
|
* [《Principles of Distributed Computing》](http://dcg.ethz.ch/lectures/podc_allstars/) |
|
|
|
|
|
介绍:分布式计算原理课程 |
|
|
|
|
|
* [《Google's Globally-Distributed Database》](http://research.google.com/archive/spanner.html) |
|
|
|
|
|
介绍:Google全球分布式数据介绍 |
|
|
|
|
|
* [《The Architecture Of Algolia’s Distributed Search Network》](http://highscalability.com/blog/2015/3/9/the-architecture-of-algolias-distributed-search-network.html) |
|
|
|
|
|
介绍:Algolia的分布式搜索网络的体系架构介绍 |
|
|
|
|
|
* [《Build up a High Availability Distributed Key-Value Store》](https://medium.com/@siddontang/build-up-a-high-availability-distributed-key-value-store-b4e02bc46e9e) |
|
|
|
|
|
介绍:构建高可用分布式Key-Value存储系统 |
|
|
|
|
|
* [《Distributed Search Engine with Nanomsg and Bond》](https://daniel-j-h.github.io/post/distributed-search-nanomsg-bond/) |
|
|
|
|
|
介绍:Nanomsg和Bond的分布式搜索引擎 |
|
|
|
|
|
* [《Distributed Processing With MongoDB And Mongothon》](http://tech.gc.com/distributed-processing-with-mongodb-and-mongothon/) |
|
|
|
|
|
介绍:使用MongoDB和Mongothon进行分布式处理 |
|
|
|
|
|
* [《Salt: Combining ACID and BASE in a Distributed Database》](http://muratbuffalo.blogspot.jp/2015/02/salt-combining-acid-and-base-in.html) |
|
|
|
|
|
介绍:分布式数据库中把[ACID与BASE](http://www.sigma.me/2011/06/17/database-ACID-and-BASE.html)结合使用. |
|
|
|
|
|
* [《Makes it easy to understand Paxos for Distributed Systems》](http://paxos.systems/) |
|
|
|
|
|
介绍:理解的Paxos的分布式系统 |
|
|
|
|
|
* [《There is No Now Problems with simultaneity in distributed systems》](http://queue.acm.org/detail.cfm?id=2745385) |
|
|
|
|
|
介绍:There is No Now Problems with simultaneity in distributed systems |
|
|
|
|
|
* [《Distributed Systems》](http://www0.cs.ucl.ac.uk/staff/ucacwxe/lectures/ds98-99/) |
|
|
|
|
|
介绍:伦敦大学学院分布式系统课程课件. |
|
|
|
|
|
* [《Distributed systems for fun and profit》](http://book.mixu.net/distsys/index.html) |
|
|
|
|
|
介绍:分布式系统电子书籍. |
|
|
|
|
|
* [《Distributed Systems Spring 2015》](http://www.andrew.cmu.edu/course/95-702/) |
|
|
|
|
|
介绍:卡内基梅隆大学春季分布式课程主页 |
|
|
|
|
|
* [《Distributed Systems: Concepts and Design (5th Edition)》](https://azmuri.files.wordpress.com/2013/09/george-coulouris-distributed-systems-concepts-and-design-5th-edition.pdf) |
|
|
|
|
|
介绍: 电子书,分布式系统概念与设计(第五版) |
|
|
|
|
|
* [《走向分布式》](http://ithelp.ithome.com.tw/profile/share?id=20060041) |
|
|
|
|
|
介绍:这是一位台湾网友 ccshih 的文字,短短的篇幅介绍了分布式系统的若干要点。[pdf](http://dcaoyuan.github.io/papers/pdfs/Scalability.pdf) |
|
|
|
|
|
* [《Introduction to Distributed Systems Spring 2013》](http://thu-cmu.cs.tsinghua.edu.cn/curriculum/dscourse/index.htm) |
|
|
|
|
|
介绍:清华大学分布式系统课程主页,里面的schedule栏目有很多宝贵的资源 |
|
|
|
|
|
* [《Distributed systems》](http://book.mixu.net/distsys/index.html) |
|
|
|
|
|
介绍:免费的在线分布式系统书籍 |
|
|
|
|
|
* [《Some good resources for learning about distributed computing》](http://www.quora.com/What-are-some-good-resources-for-learning-about-distributed-computing-Why) |
|
|
|
|
|
介绍:Quora上面的一篇关于学习分布式计算的资源. |
|
|
|
|
|
* [《Spanner: Google’s Globally-Distributed Database》](http://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/es//archive/spanner-osdi2012.pdf) |
|
|
|
|
|
介绍:这个是第一个全球意义上的分布式数据库,也是Google的作品。其中介绍了很多一致性方面的设计考虑,为了简单的逻辑设计,还采用了原子钟,同样在分布式系统方面具有很强的借鉴意义. |
|
|
|
|
|
* [《The Chubby lock service for loosely-coupled distributed systems》](http://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/zh-CN//archive/chubby-osdi06.pdf) |
|
|
|
|
|
介绍:这篇论文详细介绍了Google的分布式锁实现机制Chubby。Chubby是一个基于文件实现的分布式锁,Google的Bigtable、Mapreduce和Spanner服务都是在这个基础上构建的,所以Chubby实际上是Google分布式事务的基础,具有非常高的参考价值。另外,著名的zookeeper就是基于Chubby的开源实现. |
|
|
|
|
|
* [《Sinfonia: a new paradigm for building scalable distributed systems》](http://www.sosp2007.org/papers/sosp064-aguilera.pdf) |
|
|
|
|
|
介绍:这篇论文是SOSP2007的Best Paper,阐述了一种构建分布式文件系统的范式方法,个人感觉非常有用。淘宝在构建TFS、OceanBase和Tair这些系统时都充分参考了这篇论文. |
|
|
|
|
|
* [《Data-Intensive Text Processing with MapReduce》](http://lintool.github.io/MapReduceAlgorithms/MapReduce-book-final.pdf) |
|
|
|
|
|
介绍:Ebook:Data-Intensive Text Processing with MapReduce. |
|
|
|
|
|
* [《Design and Implementation of a Query Processor for a Trusted Distributed Data Base Management System》](http://www.utdallas.edu/~bxt043000/Publications/Journal-Papers/DAS/J16_Design_and_Implementation_of_a_Distributed_Query_Processor.pdf) |
|
|
|
|
|
介绍:Design and Implementation of a Query Processor for a Trusted Distributed Data Base Management System. |
|
|
|
|
|
* [《Distributed Query Processing》](http://ogsa-dai.sourceforge.net/documentation/ogsadai4.0/ogsadai4.0-gt/DQPPart.html) |
|
|
|
|
|
介绍:分布式查询入门. |
|
|
|
|
|
* [《Distributed Systems and the End of the API》](http://writings.quilt.org/2014/05/12/distributed-systems-and-the-end-of-the-api/) |
|
|
|
|
|
介绍:分布式系统和api总结. |
|
|
|
|
|
* [《Distributed Query Reading》](http://www.andrew.cmu.edu/course/15-749/READINGS/required/) |
|
|
|
|
|
介绍:分布式系统阅读论文,此外还推荐github上面的一个论文列表[The Distributed Reader](http://reiddraper.github.io/distreader/)。 |
|
|
|
|
|
* [《Replication, atomicity and order in distributed systems》](http://afeinberg.github.io/2011/06/17/replication-atomicity-and-order-in-distributed-systems.html) |
|
|
|
|
|
介绍:Replication, atomicity and order in distributed systems |
|
|
|
|
|
* [《MIT course:Distributed Systems》](http://nil.csail.mit.edu/6.824/2015/) |
|
|
|
|
|
介绍:MIT分布式系统课程主页,这次用Golang作为授课语言。 |
|
|
|
|
|
* [《Distributed systems for fun and profit》](http://book.mixu.net/distsys/) |
|
|
|
|
|
介绍:免费分布式系统电子书。 |
|
|
|
|
|
* [《Ori:A Secure Distributed File System》](http://ori.scs.stanford.edu/) |
|
|
|
|
|
介绍:斯坦福开源的分布式文件系统。 |
|
|
|
|
|
* [《Availability in Globally Distributed Storage Systems》](http://static.googleusercontent.com/media/research.google.com/en/us/pubs/archive/36737.pdf) |
|
|
|
|
|
介绍:Google论文:设计一个高可用的全球分布式存储系统。 |
|
|
|
|
|
* [《Calvin: Fast Distributed Transactions For Partitioned Database Systems》](http://highscalability.com/blog/2013/5/23/paper-calvin-fast-distributed-transactions-for-partitioned-d.html) |
|
|
|
|
|
介绍:对于分区数据库的分布式事务处理。 |
|
|
|
|
|
* [《Distributed Systems Building Block: Flake Ids》](http://yellerapp.com/posts/2015-02-09-flake-ids.html) |
|
|
|
|
|
介绍:Distributed Systems Building Block: Flake Ids. |
|
|
|
|
|
* [《Introduction to Distributed System Design》](http://www.hpcs.cs.tsukuba.ac.jp/~tatebe/lecture/h23/dsys/dsd-tutorial.html) |
|
|
|
|
|
介绍:Google Code University课程,如何设计一个分布式系统。 |
|
|
|
|
|
* [《Sheepdog: Distributed Storage System for KVM》](http://sheepdog.github.io/sheepdog/) |
|
|
|
|
|
介绍:KVM的分布式存储系统. |
|
|
|
|
|
* [《Readings in Distributed Systems Systems》](http://henryr.github.io/distributed-systems-readings/) |
|
|
|
|
|
介绍:分布式系统课程列表,包括数据库、算法等. |
|
|
|
|
|
* [《Tera》](https://github.com/BaiduPS/tera) |
|
|
|
|
|
介绍:分布式表格系统. |
|
|
|
|
|
* [《Distributed systems: for fun and profit》](https://github.com/mixu/distsysbook) |
|
|
|
|
|
介绍:分布式系统的在线电子书. |
|
|
|
|
|
* [《Distributed Systems Reading List》](https://github.com/notgary/distributed-systems-reading-list) |
|
|
|
|
|
介绍:分布式系统资料,此外还推荐[Various articles about distributed systems](https://github.com/hiremaga/readings). |
|
|
|
|
|
* [《Designs, Lessons and Advice from Building Large Distributed Systems》](http://www.cs.cornell.edu/projects/ladis2009/talks/dean-keynote-ladis2009.pdf) |
|
|
|
|
|
介绍:Designs, Lessons and Advice from Building Large Distributed Systems. |
|
|
|
|
|
* [《Testing a Distributed System》](http://queue.acm.org/detail.cfm?ref=rss&id=2800697) |
|
|
|
|
|
介绍:Testing a distributed system can be trying even under the best of circumstances. |
|
|
|
|
|
* [《The Google File System》](https://research.google.com/archive/gfs-sosp2003.pdf) |
|
|
|
|
|
介绍: 基于普通服务器构建超大规模文件系统的典型案例,主要面向大文件和批处理系统, 设计简单而实用。 GFS是google的重要基础设施, 大数据的基石, 也是Hadoop HDFS的参考对象。 主要技术特点包括: 假设硬件故障是常态(容错能力强), 64MB大块, 单Master设计,Lease/链式复制, 支持追加写不支持随机写. |
|
|
|
|
|
* [《Bigtable: A Distributed Storage System for Structured Data》](https://research.google.com/archive/bigtable-osdi06.pdf) |
|
|
|
|
|
介绍:支持PB数据量级的多维非关系型大表, 在google内部应用广泛,大数据的奠基作品之一 , Hbase就是参考BigTable设计。 Bigtable的主要技术特点包括: 基于GFS实现数据高可靠, 使用非原地更新技术(LSM树)实现数据修改, 通过range分区并实现自动伸缩等. |
|
|
|
|
|
* [《PacificA: Replication in Log-Based Distributed Storage Systems》](http://research.microsoft.com:8082/pubs/66814/tr-2008-25.pdf) |
|
|
|
|
|
介绍:面向log-based存储的强一致的主从复制协议, 具有较强实用性。 这篇文章系统地讲述了主从复制系统应该考虑的问题, 能加深对主从强一致复制的理解程度。 技术特点: 支持强一致主从复制协议, 允许多种存储实现, 分布式的故障检测/Lease/集群成员管理方法. |
|
|
|
|
|
* [《Object Storage on CRAQ, High-throughput chain replication for read-mostly workloads》](http://sns.cs.princeton.edu/docs/craq-usenix09.pdf) |
|
|
|
|
|
介绍:分布式存储论文:支持强一直的链式复制方法, 支持从多个副本读取数据,实现[code](https://github.com/jterrace/craq). |
|
|
|
|
|
* [《Finding a needle in Haystack: Facebook’s photo storage》](https://www.usenix.org/legacy/event/osdi10/tech/full_papers/Beaver.pdf) |
|
|
|
|
|
介绍:Facebook分布式Blob存储,主要用于存储图片. 主要技术特色:小文件合并成大文件,小文件元数据放在内存因此读写只需一次IO. |
|
|
|
|
|
|
|
|
* [《Windows Azure Storage: A Highly Available Cloud Storage Service with Strong Consistency》](http://www-bcf.usc.edu/~minlanyu/teach/csci599-fall12/papers/11-calder.pdf) |
|
|
|
|
|
介绍: 微软的分布式存储平台, 除了支持类S3对象存储,还支持表格、队列等数据模型. 主要技术特点:采用Stream/Partition两层设计(类似BigTable);写错(写满)就封存Extent,使得副本字节一致, 简化了选主和恢复操作; 将S3对象存储、表格、队列、块设备等融入到统一的底层存储架构中. |
|
|
|
|
|
* [《Paxos Made Live – An Engineering Perspective》](http://www.eecs.harvard.edu/cs262/Readings/paxosmadelive.pdf) |
|
|
|
|
|
介绍:从工程实现角度说明了Paxo在chubby系统的应用, 是理解Paxo协议及其应用场景的必备论文。 主要技术特点: paxo协议, replicated log, multi-paxo. |
|
|
|
|
|
* [《Dynamo: Amazon’s Highly Available Key-Value Store》](http://www.allthingsdistributed.com/files/amazon-dynamo-sosp2007.pdf) |
|
|
|
|
|
介绍:Amazon设计的高可用的kv系统,主要技术特点:综和运用一致性哈希,vector clock,最终一致性构建一个高可用的kv系统, 可应用于amazon购物车场景.新内容来自[分布式存储必读论文](http://50vip.com/423.html) |
|
|
|
|
|
* [《Efficient Replica Maintenance for Distributed Storage Systems》](http://oceanstore.cs.berkeley.edu/publications/papers/pdf/carbonite06.pdf) |
|
|
|
|
|
介绍:分布式存储系统中的副本存储问题. |
|
|
|
|
|
* [《PADS: A Policy Architecture for Distributed Storage Systems》](https://www.cs.nyu.edu/rgrimm/papers/nsdi09.pdf) |
|
|
|
|
|
介绍:分布式存储系统架构. |
|
|
|
|
|
* [《The Chirp Distributed Filesystem》](http://ccl.cse.nd.edu/software/chirp/) |
|
|
|
|
|
介绍:开源分布式文件系统Chirp,对于想深入研究的开发者可以阅读文章的相关Papers. |
|
|
|
|
|
* [《Time, Clocks, and the Ordering of Events in a Distributed System》](http://research.microsoft.com/en-us/um/people/lamport/pubs/time-clocks.pdf) |
|
|
|
|
|
介绍:经典论文分布式时钟顺序的实现原理. |
|
|
|
|
|
* [《Making reliable distributed systems in the presence of sodware errors》](http://www.erlang.org/download/armstrong_thesis_2003.pdf) |
|
|
|
|
|
介绍:面向软件错误构建可靠的分布式系统,[中文笔记](http://www.cnblogs.com/me-sa/archive/2012/05/20/2510564.html). |
|
|
|
|
|
* [《MapReduce: Simplified Data Processing on Large Clusters》](https://research.google.com/archive/mapreduce-osdi04.pdf) |
|
|
|
|
|
介绍:MapReduce:超大集群的简单数据处理. |
|
|
|
|
|
* [《Distributed Computer Systems Engineering》](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-824-distributed-computer-systems-engineering-spring-2006/index.htm) |
|
|
|
|
|
介绍:麻省理工的分布式计算课程主页,里面的ppt和阅读列表很多干货. |
|
|
|
|
|
* [《The Styx Architecture for Distributed Systems》](http://www.vitanuova.com/inferno/papers/styx.html) |
|
|
|
|
|
介绍:分布式系统Styx的架构剖析. |
|
|
|
|
|
* [《What are some good resources for learning about distributed computing? Why?》](https://www.quora.com/What-are-some-good-resources-for-learning-about-distributed-computing-Why) |
|
|
|
|
|
介绍:Quora上面的一个问答:有哪些关于分布式计算学习的好资源. |
|
|
|
|
|
* [《RebornDB: The Next Generation Distributed Key-Value Store》](http://highscalability.com/blog/2015/7/8/reborndb-the-next-generation-distributed-key-value-store.html) |
|
|
|
|
|
介绍:下一代分布式k-v存储数据库. |
|
|
|
|
|
* [《Operating System Concepts Ninth Edition》](http://codex.cs.yale.edu/avi/os-book/OS9/) |
|
|
|
|
|
介绍:分布式系统归根结底还是需要操作系统的知识,这是耶鲁大学的操作系统概念书籍首页,里面有提供了第8版的在线电子版和最新的学习操作系统指南,学习分布式最好先学习操作系统. |
|
|
|
|
|
* [《The Log: What every software engineer should know about real-time data's unifying abstraction》](http://engineering.linkedin.com/distributed-systems/log-what-every-software-engineer-should-know-about-real-time-datas-unifying) |
|
|
|
|
|
介绍:分布式系统Log剖析,非常的详细与精彩.[中文版笔记](http://www.cnblogs.com/foreach-break/p/notes_about_distributed_system_and_The_log.html). |
|
|
|
|
|
* [《Operating Systems Study Guide》](http://faculty.salina.k-state.edu/tim/ossg/index.html) |
|
|
|
|
|
介绍:分布式系统基础之操作系统学习指南. |
|
|
|
|
|
* [《分布式系统领域经典论文翻译集》](http://duanple.blog.163.com/blog/static/709717672011330101333271/) |
|
|
|
|
|
介绍:分布式系统领域经典论文翻译集. |
|
|
|
|
|
* [《Maintaining performance in distributed systems》](https://speakerdeck.com/elasticsearch/maintaining-performance-in-distributed-systems) |
|
|
|
|
|
介绍:分布式系统性能维护. |