- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
分布式存储的元数据设计
李道兵
七⽜云存储
2015-04 北京
引⼦
• ⾯试新⼈时最经常被问到的⼀句话:七⽜的云存储真
的是⾃⼰写的么,是不是基于 Hadoop 的?
Outline
• ⽆中⼼的存储设计: glusterfs
• 有中⼼的存储设计:hadoop
• 基于数据库的存储设计: gridfs, hbase
• 绕过问题的存储设计: fastdfs
glusterfs
• 设计⺫标
• 兼容 POSIX ⽂件系统: 你的应⽤程序⽆需修改就可以
放到 glusterfs 上来运⾏
• ⽆中⼼节点: 性能瓶颈没有了,单点故障也没有了
• 扩展能⼒: ⼤容量存储都需要这个
• 我们在这⾥不讨论 POSIX 兼容的优劣,集中通过
glusterfs 来讨论⽆中⼼节点设计中普遍遇到的⼀些难点
glusterfs
• glusterfs 是⼀系列⽆中⼼存储的设计的代表
• ⽆中⼼暗⽰着我们可以通过内容的 key 推算出来这个 key 的存储位置
• 在绝⼤部分实践中,在这种设计下如果出现单盘故障,处理模式如下
• 去掉坏盘,换上新盘
• 从⽼盘拷⻉数据到新盘
• 这个模式最⼤的问题是修复时间,4T盘在 100MB/s 的修复速度下需要
⾄少 11 个⼩时,这么⻓的修复时间会导致数据的可靠性降低(在这
11个⼩时内另外两块盘的损坏概率)
• 另外⼀种修复模式是在读的时候发现有坏块,然后触发修复,在这种模
式下修复只会更糟糕。
glusterfs
• 如何回避掉这个问题呢?
• 引⼊中间层记录分区和物理设备的关系,这样磁盘
损坏不⽤等换盘就可以开始修复
• ⼀个磁盘分成多个区,每个区可以到不同的盘上去
修复,那么可以⼤幅度缩短修复时间,⽐如分到
50 个区(每个区 80GB), 那么修复时间就可以缩
⼩到 13分钟左右。
glusterfs
• 扩容
• 在⽆中⼼设计中,扩容往往伴随着数据的再平衡,
再平衡会带来如下的挑战
• ⺴络拥塞:可以使⽤独⽴的迁移⺴络来改善
• 迁移时间⻓且迁移期间数据读写逻辑变得更复杂
:多加测试改善代码质量
glusterfs
• 不⽀持异构存储
• ⽐如⼩⽂件经常伴随着很⾼的 iops 需求,针对⼩⽂件我们可
以引⼊SAS或者SSD盘来得到更⾼的 iops, 但对于⽆中⼼存储
来讲,这种⽅法很难实施。
• 类似的异构需求还包括某些客户数据只想存两份,⽽其他客
户数据则想多存⼏份的情况,这些在⽆中⼼存储中都是很难
解决的。
• ⼩⽂件的问题针对读取的部分可以通过缓存层来改善,但对
于⾼频率的写⼊没有太好的解决⽅案
• 这⼉也存在⼀个基于 hash 碰撞的攻击⽅案,不过影响不⼤。
glusterfs
• 数据不⼀致的问题
• ⽐如我们要覆盖⼀个 key ,但在覆盖过程中出现意
外,导致只覆盖了三个副本中的两个或者⼀个。这
个时候就很容易读到错误的数据。
• 在写⼊⽂件时,先写临时⽂件,最后再重命名能改
善这个问题,但仍然不完美。
glusterfs
• 问题总结
• 坏盘修复问题:元数据+分区可以改善这个问题
• 扩容动作⼤: 忍
• ⼩⽂件⾼IOPS: 劣势,集群⾜够⼤的话可以靠规模
来抗住
• 数据不⼀致的问题: 复杂度会变⾼
您可能关注的文档
最近下载
- 2022小学语文新课标测试题库及答案.pdf VIP
- 初中生积极心理品质培育策略与实践研究.docx VIP
- 投标服务承诺书(20篇).docx VIP
- 七年级英语第一次月考卷(考试版A4)【测试范围:沪教版五四学制2024 Starter~Unit 1】(上海专用).docx VIP
- 李白按年龄顺序写的诗.docx VIP
- 2025年四川省高考化学试卷真题(含答案解析).docx
- 高频精选:京东快递员ai面试题及答案.doc VIP
- 高频精选:京东快递员ai面试题及答案大全.doc VIP
- 吉林省中药软片炮制规范.pptx VIP
- 名著阅读《湘行散记》七年级语文上册部编版(共9页).docx VIP
文档评论(0)