系统集成论坛

标题: 存储如何支持单个文件50T [打印本页]

作者: 思考的牛    时间: 2011-12-6 16:45
标题: 存储如何支持单个文件50T
昨天收到邮件,亚马逊的S3支持最大文件50T,为啥是50T,而不是100T。是如何实现的呢?

这个是比较有意思的,以前亚马逊有限制,单个文件只支持5G,这是他的系统限制。提高大文件的支持,应该有不少的办法。原理其实一介绍,大家都明白,就是有些东西没有人介绍,就让人感觉很神秘。



方法1:提高服务器端的限制,让他可以上传更大的文件,看起来这是最简单的。不过一个问题又来,亚马逊的S3,肯定是不做Raid,如果服务器上最小的硬盘是2T,那么你上传的文件最大也就是2T,无法再大。而且这样做,性能上也会造成很大的问题。



方法2:就是服务器端把文件分块存储,这应该是不错,用户不需要知道文件是否分块。不过这里一个最大的问题就是用户无法分块上传,必须从头开始传输。

方法3:当然就是在客户端想办法,在客户端分块,最大的好处就可以分块上传,多线程。

客户端分块,原理上导致最大支持50T(based on a 5GB chunk size and a container listing limit of 10000)

这就让我想到一个东西,文件的增量备份。对象存储是不支持这个功能的,但是不能增量备份,肯定很多场合也是无法使用的。那么怎么办呢?很多人就在客户端想办法,通过客户端,使得S3实现增量备份的功能。



我为啥知道那么多呢?肯定是老外说的

http://programmerthoughts.com/programming/the-story-of-an-openstack-feature/




欢迎光临 系统集成论坛 (http://bbs.xtjc.com/) Powered by Discuz! X3.1