Thursday, December 3, 2015

分布式存储必读论文 | 机会永远留给有准备的人



分布式存储必读论文 | 机会永远留给有准备的人

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: Facebook's photo storage. Doug Beaver, Sanjeev Kumar, Harry C. Li, Jason Sobel, Peter Vajgel. Facebook分布式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 �C 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购物车场景。


Read full article from 分布式存储必读论文 | 机会永远留给有准备的人

Labels

Review (572) System Design (334) System Design - Review (198) Java (189) Coding (75) Interview-System Design (65) Interview (63) Book Notes (59) Coding - Review (59) to-do (45) Linux (43) Knowledge (39) Interview-Java (35) Knowledge - Review (32) Database (31) Design Patterns (31) Big Data (29) Product Architecture (28) MultiThread (27) Soft Skills (27) Concurrency (26) Cracking Code Interview (26) Miscs (25) Distributed (24) OOD Design (24) Google (23) Career (22) Interview - Review (21) Java - Code (21) Operating System (21) Interview Q&A (20) System Design - Practice (20) Tips (19) Algorithm (17) Company - Facebook (17) Security (17) How to Ace Interview (16) Brain Teaser (14) Linux - Shell (14) Redis (14) Testing (14) Tools (14) Code Quality (13) Search (13) Spark (13) Spring (13) Company - LinkedIn (12) How to (12) Interview-Database (12) Interview-Operating System (12) Solr (12) Architecture Principles (11) Resource (10) Amazon (9) Cache (9) Git (9) Interview - MultiThread (9) Scalability (9) Trouble Shooting (9) Web Dev (9) Architecture Model (8) Better Programmer (8) Cassandra (8) Company - Uber (8) Java67 (8) Math (8) OO Design principles (8) SOLID (8) Design (7) Interview Corner (7) JVM (7) Java Basics (7) Kafka (7) Mac (7) Machine Learning (7) NoSQL (7) C++ (6) Chrome (6) File System (6) Highscalability (6) How to Better (6) Network (6) Restful (6) CareerCup (5) Code Review (5) Hash (5) How to Interview (5) JDK Source Code (5) JavaScript (5) Leetcode (5) Must Known (5) Python (5)

Popular Posts