Skip to content

Instantly share code, notes, and snippets.

@Mine77
Created February 25, 2019 04:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Mine77/da2f4bc4c4fd4b9d994b65da8294be65 to your computer and use it in GitHub Desktop.
Save Mine77/da2f4bc4c4fd4b9d994b65da8294be65 to your computer and use it in GitHub Desktop.
需求.md

需求描述

我们希望能够根据合约地址,查询某一个合约在某一个块高度上的 State Storage 的大小。

获得这个数据的目的是为了实现以下两项数据分析,从而为我们的一个经济模型研究提供数据:

  1. 分析以太坊上占用状态最大的合约
  2. 分析以太坊上占用状态增长最快的合约

我们公司会需要长期对这项数据进行观测(至少一年),但是频率会比较低(一周采样一次)。

数据收集

我们自己其实也尝试过收集这个数据。具体方式就是同步一个以太坊存档节点,然后根据合约地址找到对应的 storageRoot,再去遍历这个 storageRoot 的 MPT 树,获得的数量乘上 64bytes 就是这个合约它占用的状态的大小了。

但是由于同步一个存档节点如果只是为了获得这一项数据的话其实对我们来说性价比比较低。 但作为你们应该已经同步了存档节点,并且从中抽取其他数据提供服务的话,增加一项统计数据的成本应该不会很高(我猜)。

所以想问下你们这边的情况。

经济模型研究

我们在研究的经济模型,主要是研究以太坊的合约中,状态(即 storage)占用的大小和 eth 币价之间的关系。 我们希望通过我们的研究来暴露出现存以太坊经济模型中的一些问题。 具体可以参考:https://medium.com/nervosnetwork/smart-contract-platforms-have-to-be-store-of-value-323745fac0a5

我知道这种 API 可能不是一个常用 API,但它其实是有一定市场需求存在的,尤其是最近对于这方面的研究有上升趋势。

当然我们这边也可以考虑为这个 API 的 customization 单独付费。

@Mine77
Copy link
Author

Mine77 commented Mar 10, 2020

这是第一个帖子

@Mine77
Copy link
Author

Mine77 commented Mar 10, 2020

这是第二个帖子

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment