分布式相关文章收集(转)

转载自
  作者:廖君
  链接:https://www.zhihu.com/question/19868791/answer/88873783
  来源:知乎

分布式系统(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课程主页

《Distributed systems for fun and profit》

介绍:免费分布式系统电子书。

《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开发的分布式文件系统.

《What are some good resources for learning about distributed computing? Why?》

介绍: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黑客技巧.

《Maintaining performance in distributed systems》

介绍:分布式系统性能提升.

《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学习清单.

《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

《Comparing the performance of distributed hash tables under churn》

介绍:分布式hash表性能的Churn问题

《Brewer’s Conjecture and the Feasibility of Consistent, Available, Partition-Tolerant Web》

介绍:分布式系统的CAP问题,推荐Perspectives on the CAP Theorem.对CAP理论的解析文章,PODC ppt,A plain english introduction to CAP Theorem,IEEE Computer issue on the CAP Theorem

你可能感兴趣的:(分布式系统)