分布式存储学习总结

原创
2015/05/15 23:32
阅读数 383

1、概念

1、按照发展阶段:

  • 总线存储
  • 网络存储
  • 虚拟存储(云存储,对象存储。。。)

2、按照总线和接口类型:

  • IDE, PATA, SATA
  • PCI-E
  • SCSI, SAS
  • USB

3、按照网络存储结构:

  • DAS(Direct Attached Storage),SCSI
  • NAS(Network Attached Storage),NFS,CIFS
  • SAN(Storage Area Network),FC-SAN,IP-SAN

4、从应用角度:

  • 块存储
  • 文件存储
  • 对象存储

5、存储介质:

  • HDD,速度: sas>scsi>sata>pata,寻址LBA&CHS,调度FCFS,SSTF,SCAN,C-SCAN,LOOK,C-LOOK
  • SSD,速度: slc>mlc>tlc,pcie>sas>sata

6、RAID&JBOD:

  • RAID 0
  • RAID 1
  • RAID 5,神奇的异或
  • RAID 6,伽罗华,让人感慨的天才
  • RAID 10,为什么不是01

7、IO调度

  • deadline,对于CEPH来说,综合性能最好
  • cfs,不适合CEPH
  • noop,可能适合SSD

8、快照,克隆,镜像

  • 快照,某个时间点的映像,相关概念,RoFW,CoFW
  • 克隆,和某一时刻源数据完全相同,不随源数据变化而变化
  • 镜像,和源数据同时变化,保持一致

9、一致性概念

  • 最终一致性,比如swift
  • 强一致性,比如CEPH

10、CAP理论

  • Consistency(一致性),all nodes see the same data at the same time
  • Availability(可用性),a guarantee that every request receives a response about whether it succeeded or failed
  • Partition tolerance(分区容忍性),the system continues to operate despite arbitrary message loss or failure of part of the system
  • 经典文章:CAP Twelve Years Later: How the "Rules" Have Changed
  • 理论和实际是有差距的,CAP告诉我们不要做无用功

11、ACID vs BASE

  • ACID,原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)
  • BASE,基本可用(Basic Availability)、软状态(Soft State)、最终一致性(Eventual Consistency)
  • 需求决定架构

2、算法

1、Paxos,个人理解核心思想可能是序列化,一次只做一件事,大多数通过几个概念吧

2、Consistent hashing,CRush,关注分布均匀,迁移大小,故障域

3、LRU,ARC,如何提升缓存性能,以及分布式缓存中的一致性问题。

4、Bloom Filter,时间,空间,性能

3、实践

1、IO路径,性能优化

  • 分析数据从哪里来,到那里去,经过了那些系统,或者模块,以及相关硬件,相关协议。
  • 一些影响性能的问题,对齐,写惩罚,链路保活,资源竞争,上下文切换,Cache

2、相关工具,搜索《三张图看遍Linux 性能监控、测试、优化工具》

4、自勉

  • 学而不思则罔,思而不学则殆
  • 吾生也有涯,而知也无涯,以有涯随无涯,殆已
  • 大胆假设,小心求证
展开阅读全文
打赏
0
3 收藏
分享
加载中
更多评论
打赏
0 评论
3 收藏
0
分享
返回顶部
顶部