编按:本文为QuarkChain创始人兼CEO周期博士撰写的技术文章,并以此文章为基础,在DAppLearning进行了技术分享讲座。
DeFi、GameFi等去中心化应用的蓬勃发展,极大地增加了对低交易费用的高性能区块链的需求。然而,构建高性能区块链的一个关键挑战是存储爆炸。下图是取自Etherscan的图表,它说明了一个以太坊全节点的区块链数据大小。
从图中我们可以看出,节点的链数据规模稳步增长,现在已经达到~9TB。由于去中心化区块链的一个目标是允许普通配置的计算机运行节点,因此在普通配置的计算机上强制要求9TB存储会难以达到。
区块
状态
交易收据
这其中,状态是这8.7TB的主要组成部分。所以有时,我们将存储爆炸称为“状态爆炸”。但是为什状态会如此之大?
Interlay:暂未受到aUSD增发影响:金色财经消息,发行比特币封装资产iBTC的波卡平行链Interlay在Twitter上表示,Interlay暂未受到aUSD增发影响,且持有增发aUSD的地址也未进行跨链转账,但具体情况仍在调查之中。[2022/8/14 12:24:45]
什么是以太坊状态?
以太坊状态是一个MerklePatrica树,其中
叶子节点是地址(0x...)=>帐户的映射,其中帐户存储与地址关联的余额、nonce等
内部节点维护树结构,以便可以快速计算整个树的哈希根
由于存档节点将保留所有区块的所有历史状态,这意味着MPT中的任何更新都将创建O(log(N))个内部节点,并且不会删除旧的内部节点。
安全团队:LV PLUS项目再次发生Rug Pull,损失约5万美元:6月29日消息,安全团队CertiK在社交媒体上称,LV Metaverse (LV PLUS) 项目再次发生Rug Pull,合约部署者再次拿走价值5万美元的代币。
此前消息,LV Metaverse (LV PLUS) 项目的LVP代币暴跌,损失约150万美元。LV Plus合约部署者钱包因将其代币转移并售出而导致了LVP代币暴跌,因此被监测认定为Rug Pull。[2022/6/29 1:37:59]
通过定期存储MPT,状态的存储大小显著减少。据Etherscan数据,目前Geth全节点的区块链数据大小约为1TB。
在不存储历史MPT的情况下,一个Geth节点的存储大小可以进一步减少到447G。通过减去300GB的区块数据,我们推断状态大小约为150GB。
FuseFi融资230万美元推出DAO,Collider Ventures等参投:12月3日消息,FuseFi宣布完成230万美元融资,以推出FuseFi去中心化自治组织 (DAO) 和 Volt (VOLT) 治理token。FuseFi DAO得到了Fuse Network区块链代币原始投资者的支持,包括Collider Ventures、Blockchain Founders Fund、TechMeetsTrader和Collider VC,新风投包括Node Capital、Sheesha Finance、LVT Capital、MVST:MG、AngelDAO、ZBS Capital、Nakheel Capital、Metavest Capital和Shima Capital。
即将推出的FuseFi DAO将管理一体化DeFi平台FuseFi以及面向消费者的移动应用程序Fuse Cash。Volt (VOLT) 代币将用于通过快照和链上投票进行治理。根据DAO的方向,预计还会在平台的产品套件中采用其他实用程序,例如提供对Fuse Cash的优质服务的访问。(Cointelegraph)[2021/12/3 12:49:38]
币安智能链。截至2021年12月8日,BSC已有:
Gate.io已上线KAVA永续合约实盘交易(USDT结算):据官方公告,Gate.io已上线KAVA/USDT永续合约实盘交易(USDT结算),支持1-20倍做多和做空操作,杠杆率可以在下单时自行选择。Gate.io永续合约是全球最活跃的区块链资产合约市场之一,日交易量高达8亿美金,结算类型分为“BTC结算永续合约”和“USDT结算永续合约”两种。Gate.io提示:请用户务必在完全了解风险并能承担风险的情况下参与,Gate.io平台不对投资行为承担担保、赔偿等责任。[2021/1/22 16:46:18]
约984GB链上数据,其中区块约占550GB,状态约占400GB。
20.6623亿笔交易,100TPS
如果我们进一步用交易数量来预测数据大小,我们可以得到:
报告指出超40%的BTC价格暴涨与USDT滥发有关:一篇名为“The Tether Report”的匿名报告揭示了USDT发行和BTC价格暴涨之间的强关联性。报道指出,在2017年3月29日-2018年1月4日之间,USDT总计发行91次,而48.7%的BTC价格大涨均发生在USDT发行之后的2小时内。该报告总结到, Bitfinex的充值/提现数据可疑,应该进行更多审计,如果以上可疑行为坐实,那么30-80%的BTC价格暴跌可以被预测。报告作者担心报告发出后的影响,选择匿名,只用一长串数字代表自己。不过她/他也表明报告的目的不是为了指责Tether公司有违规行为,而是督促Tether进行审计。然而就在昨日,Tether被爆出和审计公司Friedman LLP的合作关系已正式结束,短期内不能进行审计。值得注意的是,一些分析师指责该公司大量生产USDT作为操纵比特币价格的手段。[2018/1/29]
如果TPS为100,即~3,153MTPY
1年后,总TX~5,219M,区块~1.375TB,状态~1.085TB
3年后,总TX~11,525M,区块~3.025TB,状态~2.387TB
如果TPS为150,即~4,730MTPY
1年后,总TX~6,796M,区块~1.809TB,状态~1.427TB
3年后,总TX~16,256M,区块~4.327TB,状态~3.414TB
综上所述,对于BSC来说,如果保持目前的速度甚至更高,则很快就会达到以太坊存档节点相同的存储大小,这是普通计算机几乎无法运行的。
具有极高TPS区块链的存储爆炸问题
如果我们对一个极高TPS的区块链做一个更大胆的假设,这个数字会变成多少?我们来考虑一个具有1000TPS的区块链并分析其区块和状态大小,将是:
假设tx大小约为100字节,每年区块所需的存储量为1000(TPS)*100*365*24*3600=2.86TB
假设MPT有100亿账户,我们预计状态大小将为150G/0.18B*10B=8.3TB
将这些数字放在一起,我们很容易得出一个结论,这是大多数普通配置计算机将无法承受的要求!
优化
为了优化存储成本,我们必须将限制放宽为兼容EVM而不是兼容以太坊。即,我们必须构建/运行另一个支持EVM的链,而不是高度优化的以太坊客户端。
~10B*50100GB=600GB,大约是MPT版本的1/10!
虽然使用普通KV会带来巨大的好处,但一个主要问题是我们无法在如此短的区块间隔内计算每个区块的状态后哈希,这意味着我们将失去以太坊的以下好处:
快速同步:下载任何区块的状态并通过重放剩余的区块来快速同步网络
分叉检测:来自对等方新创建的区块是否会导致与本地执行区块的状态不同。
为了启用快速同步,我们有一个周期性的快照区块。一个快照区块包含前状态哈希这一附加信息,即前一个快照区块的后状态哈希:
非快照区块不维护状态哈希,而是具有增量哈希,其中包含该区块的所有交易事务的原始数据库操作的哈希。这使得分叉检测成为可能!
我们使用交易前状态哈希来代替以太坊中区块的交易后状态哈希。原因是节点不能立即计算状交易后的状态哈希,但是通过使用交易前状态哈希,节点可以使用整个epoch间隔来计算哈希。例如,假设状态哈希计算每秒处理10M的状态数据,那么计算600GB的整个状态将需要600GB/10M~16.67小时
计算状态前哈希的流程如下:
1.当一个快照区块被接收并最终确定时,它的KV状态被快照,并创建一个后台线程来迭代所有KV条目并计算哈希。
2.当下一个快照区块被创建时,计算出的状态前哈希值将存储在该区块中。同样,节点将创建KV的另一个快照并在后台计算其哈希。
3.当下一个快照区块被创建时,节点除了存储状态前哈希之外,节点现在可以释放快照区块的KV快照,这意味着来自快照区块以来所有被删除/更新的数据将被自动垃圾回收
其结果意味着,要存储状态,节点只需要最多两个KV快照。
最新的快照区块的交易执行前状态快照,即快照区块的交易执行后状态
快照区块之后的完整区块
我们可以对存储成本进行简单的数学计算:假设epoch持续时间为2周,则区块重放大小为
2*14*24*3600*100*1000=224GB!
而且,这里的数字不会随着时间的推移而增长!
不仅是区块,状态存储消耗了很多的空间
当TPS>1000时,存储空间用量高得令人望而却步
我们提出对区块和状态进行优化:
区块大小从每年2.86TB减少到224GB
状态大小从8.3TB减少到600GB
一台2TB的普通配置计算机应该能满足长时间运行节点的条件
缺点:轻节点无法验证状态中的一个数据
致谢
感谢dapp-learning主办此次活动。
尊敬的欧易OKEx用户:为答谢新老用户对赚币产品的关注和支持,欧易OKEx将开启“赚币年末礼献”系列活动.
2021是Game-Fi元年,2022将迎来第?次?爆发。游戏类应?对低?续费,?TPS,?扩展性有着极?的要求,BSC和Solana两条公链成为各?游戏开发商的?选.
DeFi由Compound的流动性挖矿而兴起,在经历了今年NFT、GameFi等的冲击之后,DeFi依然是当前区块链上应用最广的方向.
原文标题:《Web3/Crypto:WhyBother?》原文作者:AlbertWenger,USV合伙人原文编译:gm,律动BlockBeats?“我不是说Web3会解决所有问题,当然不会.
尊敬的用户: Huobi?Global已于新加坡时间2021年9月完成持仓GAS月度持仓奖励的发放,同年10月起将停止GAS月度持仓返利的活动.
PYM/USDT新版流動性礦池模式)已正式上線,交易市場50%手續費收益將新增投入到流動獎金池中;Taker和Maker手續費即日起調整至0.3%.