
七牛云储详解.ppt
22页七牛云存储详解@许式伟2013年5月1日大纲•需求–七牛云存储的功能特性•存储、加速、数据处理•功能与实现原理–存储与加速–数据处理•总结七牛云存储•为移动时代开发者打造的数据平台–存储•海量、可靠、便宜–加速•上传、下载速度快•可分块并行上传•可断点续上传、下载–数据处理•图片缩略图/裁剪/水印/...•音视频转码•流媒体•可快速定制新的数据处理模块框架示意图开发者的工作 复复杂难杂难懂且懂且质质量低下的量低下的移移动动互互联联网网自动选择最近节点上传下载客户的业务服务器可以变得非常轻量智能DNS和路由优化,帮助你屏蔽国内网络环境的复杂性数据处理增值服务多副本、分布式、多IDC互备的安全存储视频转码图片处理加速节点加速节点加速节点加速节点移动应用业务服务器客户端SDK服务器端SDK123存储•目标–海量、可靠、便宜–如何用便宜的机器、很低的冗余度,组装出可靠的系统集群可靠性•存储集群的可靠性取决于–硬盘寿命•比较难调整,且与成本挂钩–容错度•集群可以容忍同时损坏多少块硬盘•通常与冗余度有关,与成本比较相关–单位修复时间•指单块硬盘损坏的修复时间•实现上可产生巨大差异•存储集群可靠性的关键指标修复时间•参考值:单盘对拷时间–局域网带宽–磁盘带宽–磁盘大小–修复时间 = 磁盘大小/min(局域网带宽, 磁盘带宽)•如何突破单盘带宽瓶颈?–让更多磁盘参与其中:将丢失的数据,均匀地分配到集群其他磁盘上•注意:为了高可用,同一文件的数据不应该同时出现在一台机器的不同硬盘上–理论上限•修复时间 = 磁盘大小/min(局域网带宽, 磁盘带宽)/(N-1)•N = 集群的磁盘数目容错度/冗余度•三副本–冗余度:3–容错度:允许3块硬盘同时损坏2块–可靠性:在单位修复时间内,同时损坏3块盘,则发生数据丢失•跨机器做RAID6–冗余度:(N+2)/N–容错度:允许N+2块硬盘同时损坏2块 (N越大风险越大)–可靠性:在单位修复时间内,同时损坏3块盘,则发生数据丢失–典型配置:N=4,冗余度=1.5•跨机器做EC–冗余度:(N+M)/N–容错度:允许N+M块硬盘同时损坏M块 (M越大风险越低)–可靠性:在单位修复时间内,同时损坏M+1块盘,则发生数据丢失跨 IDC 的数据冗余•目标–高可靠•单IDC出现自然灾害(比如地震)时不丢失数据–高可用•单IDC网络出现故障时,整个集群仍然正常工作加速•下载加速–利用成熟的CDN网络–多CDN智能管理•上传加速–跨IDC的分布式存储结构下载加速•考量–CDN这样的下载加速网络已经发展了10年多,非常成熟–七牛不希望在这一块上重复投入–七牛希望成为业界最专业的多CDN管理者•如果某个区域某家 CDN 比较快,将流量分配给它•在一个 CDN 出问题的时候,迅速将流量切到另一家 CDN•...下载速度对比与国内某知名云的对比上传加速•上传加速是个新课题,随着UGC内容增加而兴起•上传加速需要结合存储一起考虑–区别于下载加速,你不能认为上传节点是加速节点,它需要是存储节点,Why?•上传加速节点有数据可靠性的要求,不能丢数据•上传加速节点的数据,需要被立刻访问–不能有一个中间状态,你告知用户上传成功了,但是用户通过其他 IDC 下载不到这个数据存储与加速一体化•目标–跨 IDC 的分布式存储•传统分布式存储通常是单IDC集中式的–用户可选择任意的 IDC 就近上传•可大大提升上传速度–可分块并行上传•对传视频等大文件特别有效–可断点续上传•对2G/3G等移动网络特别有效上传速度对比与国内某知名云的对比数据处理•目标–快速、高伸缩性–功能易扩展•需要非常容易添加新的数据处理模块–可预转•上传即转换,加快用户第一次访问时的速度有点抽象?来点真的•微软的网站–可以做更多•缩略图–数据处理样式•样例–音视频处理?•总结•要点(Highlight)–存储的关键是成本和可靠性–不重复制造轮子,做好多CDN管理专家–要做到上传速度快,存储与加速一体化–数据处理客户需求多样化,关键是解决扩展性Q & A许式伟@七牛云存储。












