首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >哪种方法能有效地记录区块链中的数据?通过智能契约发送事件,还是在没有价值的事务中发送数据?

哪种方法能有效地记录区块链中的数据?通过智能契约发送事件,还是在没有价值的事务中发送数据?
EN

Ethereum用户
提问于 2020-07-13 07:13:16
回答 1查看 308关注 0票数 0

我想把数据记录在Ethereum区块链中。很明显,我们可以创建一个智能契约来发布事件并从中检索数据。

但是,发送带有数据的事务而没有ETH值(只是gas,但没有ETH)比部署发出事件的合同更有效吗?

我想从以下角度谈一谈:

  1. 成本-这两种方法中哪一种更便宜?
  2. 检索--是否有任何方法提供比其他方法更快的数据检索?
  3. 删除-删除智能契约数据也会删除事件吗?

想知道上面的一些答案。

谢谢!:)

EN

回答 1

Ethereum用户

回答已采纳

发布于 2020-07-13 09:10:35

在each中,您为发送的每个字节付费--无论是发送到智能契约还是发送到EOA (外部拥有的地址)。使用智能契约,您还可以为执行(以及初始合同部署)支付费用。

我想说的是,这取决于你想要对数据做什么。如果您只是将带有任意数据的事务发送到任何地址,则可能是非常非常规的,因此这种功能的工具可能很差。此外,也没有数据的结构,也没有太多的其他方法来组织它。

因此,如果您想以任何简单的方式访问数据,则应该将其发送到契约(甚至可能会发出事件)。

数据检索始终可以从本地节点进行,因此无论数据是以何种方式存储,它都是高效的。

如果您删除一个契约,它只会从该块开始的块链中删除它的字节码--所有的历史记录都将保留下来。所以合同在那之后就不能用了。

票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/84983

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档