V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
c0878
V2EX  ›  随想

突发奇想,分布式存储充分利用办公电脑空闲空间

  •  
  •   c0878 · 2012-05-15 17:05:24 +08:00 · 4339 次点击
    这是一个创建于 4583 天前的主题,其中的信息可能已经有所发展或是发生改变。
    公司办公PC硬盘基本500G起,除了设计的放素材基本用不了那么大空间。如果有个靠谱的服务端能把这些空闲硬盘空间利用起来弄个类似私有云存储的东西就好了。这样也省了文件服务器,NAS之类的东西。电脑多的话这个容量和性能还是挺可观的吧。
    17 条回复    1970-01-01 08:00:00 +08:00
    luguozmy
        1
    luguozmy  
       2012-05-15 17:14:55 +08:00
    性能不可观
    skydiver
        2
    skydiver  
       2012-05-15 17:15:40 +08:00
    这个感觉像一个“空间银行”,零散的空间相当于存款,从用户收集空间来做其他的用途。

    创意很好,但是要解决如果有人关机怎么办。
    Ziya
        3
    Ziya  
       2012-05-15 17:16:13 +08:00   ❤️ 1
    1.性能问题:虽然是公司内部局域网传输,但是分散至多台电脑的“存储服务器”,无论是查找文件时的速度,还是上传下载时对“当前电脑”的影响,我觉得会是个问题
    2.安全问题:多台服务器就意味着更多“挂掉”的可能?
    3.空间问题:从500G中划分多少?如果“当前电脑”中的文件增大,导致原先保留本机使用的空间不够了,该如何重新划分?如果进行“存储操作时”,“当前电脑”上的空间不够时,该如何处理?

    初步的疑问就这么多 :)
    kava
        4
    kava  
       2012-05-15 17:17:11 +08:00
    挺有想法的,我目测了一下我们办公室的电脑基本空闲500G以上。。
    binux
        5
    binux  
       2012-05-15 17:18:11 +08:00
    如果哪天谁没来上班,正好需要的文件在那台电脑上,那不抓瞎吗。。
    mkeith
        6
    mkeith  
       2012-05-15 17:25:48 +08:00
    @binux 网吧的无硬盘系统 硬盘集中到服务器里
    Wy4q3489O1z996QO
        7
    Wy4q3489O1z996QO  
       2012-05-15 17:25:53 +08:00
    类似楼主想法的分布式云存储国外有一个,之前在igfw上看到过。但是记不住名字了。
    你的电脑共享出来30G空间,在存储中也会得到相应的30G空间。
    至于关机问题,云够大就能解决了。
    eric_q
        8
    eric_q  
       2012-05-15 17:26:51 +08:00
    在公司范围内的话,搞数据的多点增量备份倒是有可能
    Johnny
        9
    Johnny  
       2012-05-15 17:30:28 +08:00
    利用CPU资源可以,因为是实时资源,关机了我可以找别人的。
    存储的话肯定要有冗余存储,但是,到底冗余多少算够呢?
    楼主可以想想电驴 BT等P2P服务,你可以理解为原本应该存在服务器上供大家下载的资源转移到个人电脑。

    首先是效率问题,要很多的冗余。
    其次,BT电驴不是也有很多种子没有源吗??
    Johnny
        10
    Johnny  
       2012-05-15 17:36:19 +08:00
    刚刚回复上一条的时候想到一个方案:

    小容量存储。每个客户端划分(100M以内)做存储。
    所有在线客户端有个总的服务器端做管理,保证在线的客户端在服务器端有心跳。
    所有需要存储的文件划分成块(比如100M),传到在线的客户端做存储。每个数据块做一个冗余。
    当某个客户端离线时,原本储存在他那里的数据迅速找另外一个在线的客户端做存储(因为有一个冗余数据,所以做的到,但是如果冗余客户端也同时离线,那就悲剧了。可以再扩大冗余)。
    小数据块的好处是能迅速做冗余备份。
    ========================
    以上方案有个很大的问题,深夜的时候在线客户端肯定明显变小,那么,存储量就会不够了。
    就是说 白天够存深夜不够。
    lch21
        11
    lch21  
       2012-05-15 17:38:02 +08:00
    费电

    不环保
    c0878
        12
    c0878  
    OP
       2012-05-15 17:40:22 +08:00
    呃 未想到关机的问题,假如整个系统是动态的,PC数量足够大,保持一定数量的PC在线还是可以解决的.

    文件存储肯定是冗余的 这样可以避免某台PC挂掉的情况
    然后存储可以采用虚拟磁盘的方式,每个电脑上弄个VHD文件,动态大小,也方便加密
    性能的话采用多线程从多台电脑的多个copy读取这样会好些
    写入的话只要数量够多,这样平摊到每台PC的写入操作就比较少了。前提是PC性能足够,目前办公PC基本双核+SATA硬盘,我觉得还行。但是需要加一个关机前先同步完当前写入读取操作然后再通知服务端下线的过程.
    binux
        13
    binux  
       2012-05-15 17:46:11 +08:00
    @c0878
    保持足够的PC在线对于办公室环境是不可能的。
    比如晚上的时候很可能就只有1台电脑还开着,如果这时候进行文件调度,所有的文件都会聚集到这台电脑上,很显然这就存不下了。而如果不调度,当PC数少于一定数值的情况下,整个系统就不可用了。
    c0878
        14
    c0878  
    OP
       2012-05-15 17:51:59 +08:00
    @binux 的确是这样
    服务端可以有个缓存 当PC在线数量低于某值时只能存不能取,不过这样一来就不太适合频繁读写的服务了,比较适合做备份
    cheshirecat
        15
    cheshirecat  
       2012-05-15 18:48:50 +08:00
    想法很好。如果能把所有闲置的 cpu 和 ram 和 vcard 利用起来 ... 嗯这个可是要多的电费啊 ... 等等,怎么这么像 bitcoin ...
    Ricepig
        16
    Ricepig  
       2012-05-15 18:59:20 +08:00
    SETI@Home?
    badec
        17
    badec  
       2012-05-15 19:10:48 +08:00
    其实最终的解决办法就是。公司每台电脑只配有 装完系统还有一点点富余的空间。比如每台电脑只配80GB空间计算的好的话可以配40GB。其余储蓄空间。都交由公司服务器处理。这是我衍生出来想到最靠谱的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2856 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 12:30 · PVG 20:30 · LAX 04:30 · JFK 07:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.