level 9
saulye
楼主
国内云存储行业为什么忽然进入了一个靠增量粗暴圈地的竞争局面?
因为实际上国内网盘容量只是一个迷惑用户的数字而已,给用户1TB存储容量所花费的成本远远低于100GB的10.24倍。
首先要清楚一个概念,就是重复的资源在服务器只会存储一份。这也是资源秒传的基本原理。用户存储在自己网盘中的资源其实大部分都是与别人重复的,特别是容量较大的资源(比如电影、游戏),这样服务器所需要的存储空间远远低于用户数x提供给用户的网盘容量。
国内服务提供商的主要成本还是带宽成本以及维护分享系统的成本,这与提供给用户的“存储空间”相关甚小。
国外为什么不同?我认为这与它们的版权保护相关,盗版的电影、游戏、软件等比较难以分享,所以用户的网盘主要用于同步自己的资料等,这些资源大部分是非重复性的,所以服务器存储空间成本不能作为可以忽略的因素。当然可能还有一个原因就是,用户没法分享非法的大资源也就不需要那么多的容量。
================== 补充 ===============
评论中有提问到如何判定重复资源。在同一个网盘服务提供商内的资源,很容易判定,因为服务器上已经存储了该项资源,每个资源都有一个fileID。资源的URL可以根据它自己订的规则生成,例如百度网盘就是shareID + userKey。一个文件想“转存”多少份都可以,无非就是多生成一个URL。只需要维护这个fileID->URL文件映射数据库就可以了。
而不在这个文件映射数据库中的资源如何判定重复?这个校验算法属于商业秘密,我只能讲下我的想法。资源可以分为在线资源和本地资源。
在线资源,即URL资源。例如,网盘的离线下载会让你输入http/ftp链接,或者torrent文件。以迅雷公司为例:对于这种在线资源,首先会先维护一个key/value数据库,即某个URL映射的资源。他们还会做一些类似爬虫之类的东西,对这些URL资源的有效性进行判断。URL对应的资源变更了怎么办?可以先对文件大小做简单的校验。如果大小不一,再进行复杂的校验。对应资源能否续传,校验的方法也会不一样。
本地资源,即要从用户计算机上传至服务器的文件。大家一定都发现,要想极速秒传,就得安装浏览器插件或者客户端。这个插件或客户端就是用来执行校验算法的,并且都是闭源的,这是为了保护商业秘密。对于小文件,可以直接对整个文件计算Hash值,常用的有MD5、SHA1、CRC32等。对于大文件,可以对文件进行分段计算Hash值,然后再用某一算法得到文件的唯一标识。
不同的文件有没有可能得到相同的值,理论上是有可能的,但是概率低到完全可以忽略。就像暴力法破解加salt的md5密码一样,很困难。初期服务提供商由于算法不严谨,的确有碰到过将两个不同的文件弄混的情况,不过现在好像没怎么听说过这事了。
转自“知乎”,帮助大家看清最近愈演愈烈的云盘大战。
2013年09月04日 03点09分
1
因为实际上国内网盘容量只是一个迷惑用户的数字而已,给用户1TB存储容量所花费的成本远远低于100GB的10.24倍。
首先要清楚一个概念,就是重复的资源在服务器只会存储一份。这也是资源秒传的基本原理。用户存储在自己网盘中的资源其实大部分都是与别人重复的,特别是容量较大的资源(比如电影、游戏),这样服务器所需要的存储空间远远低于用户数x提供给用户的网盘容量。
国内服务提供商的主要成本还是带宽成本以及维护分享系统的成本,这与提供给用户的“存储空间”相关甚小。
国外为什么不同?我认为这与它们的版权保护相关,盗版的电影、游戏、软件等比较难以分享,所以用户的网盘主要用于同步自己的资料等,这些资源大部分是非重复性的,所以服务器存储空间成本不能作为可以忽略的因素。当然可能还有一个原因就是,用户没法分享非法的大资源也就不需要那么多的容量。
================== 补充 ===============
评论中有提问到如何判定重复资源。在同一个网盘服务提供商内的资源,很容易判定,因为服务器上已经存储了该项资源,每个资源都有一个fileID。资源的URL可以根据它自己订的规则生成,例如百度网盘就是shareID + userKey。一个文件想“转存”多少份都可以,无非就是多生成一个URL。只需要维护这个fileID->URL文件映射数据库就可以了。
而不在这个文件映射数据库中的资源如何判定重复?这个校验算法属于商业秘密,我只能讲下我的想法。资源可以分为在线资源和本地资源。
在线资源,即URL资源。例如,网盘的离线下载会让你输入http/ftp链接,或者torrent文件。以迅雷公司为例:对于这种在线资源,首先会先维护一个key/value数据库,即某个URL映射的资源。他们还会做一些类似爬虫之类的东西,对这些URL资源的有效性进行判断。URL对应的资源变更了怎么办?可以先对文件大小做简单的校验。如果大小不一,再进行复杂的校验。对应资源能否续传,校验的方法也会不一样。
本地资源,即要从用户计算机上传至服务器的文件。大家一定都发现,要想极速秒传,就得安装浏览器插件或者客户端。这个插件或客户端就是用来执行校验算法的,并且都是闭源的,这是为了保护商业秘密。对于小文件,可以直接对整个文件计算Hash值,常用的有MD5、SHA1、CRC32等。对于大文件,可以对文件进行分段计算Hash值,然后再用某一算法得到文件的唯一标识。
不同的文件有没有可能得到相同的值,理论上是有可能的,但是概率低到完全可以忽略。就像暴力法破解加salt的md5密码一样,很困难。初期服务提供商由于算法不严谨,的确有碰到过将两个不同的文件弄混的情况,不过现在好像没怎么听说过这事了。
转自“知乎”,帮助大家看清最近愈演愈烈的云盘大战。


