社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  区块链

区块链存储,现在的做法可能都错了!

待字闺中 • 5 年前 • 452 次点击  

由于对存储的情有独钟,我对区块链存储也是异常看好,很早就研究了Storj、Sia、IPFS/Filecoin、Burstcoin等项目,翻译了这些项目的白皮书,研究了存储挖矿,甚至矿机、矿场。也经历了“异常繁荣”的Filecoin矿机市场,当然现在繁荣在继续,Filecoin项目依然没有实质性的进展。

最近,随着研究的深入我开始反思区块链存储这个方向,开始反思现在的做法是否能够应对未来的变化,开始反思要从更全局、更宏观的视角去分析区块链存储该如何做,甚至存储本身应该怎么做。可能现在的做法、路径都不够正确。

聊聊需求

存储最直接、最急迫的需求就是数据爆发式的增长。近年来,伴随着云计算、大数据、物联网、人工智能等信息技术的快速发展和传统产业数字化的转型,数据量呈现几何级增长,据IDC预测,全球数据总量预计2020年达到44个ZB,我国数据量将达到8060个EB,占全球数据总量的18%。这是什么概念呢?如果是10TB的存储设备,只是中国就需要8亿台设备,很快就需要每个中国人手里都需要有一台。

除了数据量的急剧增加,用户对数据存储的需求主要有:安全、可靠、快速、灵活、低成本。大家注意,这并不是区块链存储才有的需求,很多人在发表演讲、写文章的时候,忽视了这一点,这些需求是普适性的需求,对通用存储的通用需求。所以我们在讲区块链存储如何满足这些需求的时候,要严谨、客观的对比现在的存储,尤其是云存储。不能够为了区块链存储而肆意的夸张,就目前区块链存储的技术而言,还没有十足的把握能够战胜已经成熟的云存储技术。

提到区块链大家都会很自然的觉得安全。尤其是对比现在的云存储,用户上传数据之后,毫无隐私而言,用户失去了对数据的控制权。而区块链把隐私、控制权还给了用户。表面上看是如此,我们要明白为什么区块链可以实现,本质上是因为区块链的加密技术。那现在云存储是否可以采用加密技术呢?当然可以,这并不是区块链独有。想象一下,我们做一个开源的客户端,由用户自己管理私钥,将经过加密的数据在上传到云存储,云存储还能够肆意的使用用户的数据么?当然不能。另外一个“专家们“认为的区块链存储的优点是:区块链存储可以将数据分片,分散在世界各地,从而一定程度的提高安全性。我们可以不在表面上愚弄用户么?难道现在的云存储,不是分布式存储么?没有高效的分片、备份机制么?而且这些机制,相比较区块链的存储更加成熟、高效。也有”专家“说,区块链存储是由去中心化组织运营的,云存储是中心化运营。这一点也蛮搞笑,因为当出现用户数据丢失的时候,用户面对一个去中心化的组织,该去找谁呢?

提高可靠性,区块链存储的”专家们“往往会把IPFS的一些原理搬出来——数据永不丢失。咱们是不是可以回归技术人的本心,IPFS真的不会丢失数据么?区块链存储发展到现在,没有起来的一个重要原因,就是可靠性与成本很难权衡。现在云存储,例如Amazon等,已经能够提供商业级的可靠性,小数点后面有一堆9,而且是经过实战检验的。但区块链存储呢?怎么保证?分布全球的节点,具有非常大的随机性,说断就断。软件层面的调度都来不及采取措施。区块链存储这样的网络,没有任何的安全措施,很容易被黑客控制、挟持,请问怎么保证用户数据的可靠性呢?所以,不要轻言可靠性更强,我们应该努力的提高技术,提高硬件技术水平,在实际中检验。

快速也是区块链存储的一个大的亮点,这个来自于BT。这个呢?也是“专家”们的一厢情愿了。难道中心化存储会出现巨大的瓶颈么?中心化存储就没有分片,就没有并行下载,就没有CDN么?

专家们可能会说这样的成本太高了,去中心化的存储成本低。请问你真的计算过么?你真的有运行Storj,Sia的节点么?真的区块链的存储成本更低么?我们讨论成本,请明白前提,如果不在乎数据是否会丢,成本当然低——现在IPFS网络的数据随便放,然后这些数据说不定什么时候就会不存在。如果要保证高可靠性,区块链存储要付出什么样的成本呢?要激励矿工贡献存储和带宽,需要付出什么样的成本呢?而且付出了这样的成本之后,矿工具备专业IDC的运维能力,保证节点的稳定运行么?其实做过分布式系统的工程师们,大概可以算出来,在全球这样一个公开的,不可信任的网络里,构建一个可靠的分布式存储,成本只会比云存储要高,而且要高很多。

最后说说灵活,我不知道为什么会有人把这一点也作为区块链存储胜过云存储的优点。想想BTC,ETH节点升级的历史吧,几乎每一次升级都试一次阵痛,甚至还会导致分叉。“专家”们,当一个分布式系统大到一定的程度,真的有很多超出你知识范围的事情发生,请不要再混淆视听。

所以,我觉得现在的做法都是错的,抛开了技术上的深入研究,将一切希望都寄托在“区块链”三个字上,这是固步自封,是退步。

聊聊技术的未来

IPFS无罪,还是在区块链这场洪流中,人性变了样。那我们到底该怎么做呢?

我们应该押注的是技术的进步。应该投入更大力量的是技术的研发,这可能不会很快,但要想在未来能够存活下来,现在就应该开始。

技术上的进步包括软件,例如IPFS——一个集大成的系统,集合了Git、BT等强大系统的有点。但IPFS仍旧有很多内容没有实现,需要我们去实现。只是集成还不够,我们需要创新。

技术上的进步也包括硬件,硬件还是现在的机械硬盘、SSD硬盘么?我想这样的硬件,无法满足数据的爆发式增长,尤其是机械式的硬盘。我们应该着力研究未来存储,例如DNA存储,也许这些技术在现在因为某些环节的高成本,但并不等于以后无法实施,同时这些点都是我们巨大的机会。


想想,现在机械硬盘的生产已经被美国、日本垄断,贸易战一打响,我们的硬盘应声涨价。多么难过,这是违背科学、科技发展潮流的,我们的使命、和机会都来了。

技术上的进步也包括网络,专家还在普及什么是“主干网”,5G已经离我们越来越近了。所以你的矿机还在讨论有几个万兆网口的时候,其他技术的进步已经会带来毁灭的打击了。我们需要去学习,深入的研究。做面向未来的产品。

很开心的看到各个领域的技术都有着绝大的进步,我们做每一件事,都不能眼里只有这件事,我们要横观各行各业,深入研究前沿科技,也许我们面临的事情,就有完全不一样的玩法。希望和大家就这些技术展开交流,谢谢大家。


今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/N7fKLz836D
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/21008
 
452 次点击