我们继续互联网技术架构-分布式存储。
总目录:
-
分布式存储概述
-
分布式存储特性 - 哈希分布/一致性哈希分布
-
分布式存储协议 - 两阶段与Paxos
1. 概述
分布式存储作为互联网之核心基石,没有分布式海量存储就好比无源之水。分布式系统不是什么新鲜事物,教科书里已经研究了好多年,但是不温不火,直到近年互联网大数据应用的兴起才使得它大规模的应用到工程实践中,其主要特点概括为:规模大+成本低。现在的大型互联网公司少则几百几千个PC服务器,多的达到数百万级别低成本PC服务器集群;
总体来说,分布式存储需要具备以下一些要素:
-
可扩展:灵活水平扩展到成百上千上万,并且整体性能线性增长。
-
低成本:构建与低成本PC,兼备自动容错,自动负载均衡等机制。
-
高性能:秒,毫秒,亚秒级别。
-
易用:构建生态环境,与其它系统集成,如监控,运维,数据导入。
分布式存储的挑战来源自于其设计的两个技术领域:分布式 + 存储:
-
数据分布式:数据如何分布,数据如何跨服务器读写?
-
一致性:数据如何replication,多个副本之间又如何同步
-
容错:检测,并迁移故障服务器上的数据
-
负载均衡:如何“空中加油”,运行中添加,卸载服务器
-
事务并发:分布式事务,并发控制
分布式存储数据分类:
按照其所处理的数据类型来分的话,大体分为