为了方便投资者及时了解热门项目的相关信息和使用流程,金色财经推出了“金色说明书”系列教程。本期由金色财经和登链社区联合推出。
风险提示:“金色说明书”系列教程,根据项目公开消息,为各位提供使用流程和相关资讯,不作为投资建议。投资风险高,参与需谨慎!
DuneAnalytics是进行区块链研究的强大工具。它可用于查询,提取和可视化以太坊区块链上的大量数据。这篇文章介绍了一些基本示例,这些示例说明了如何搜索和编写基本查询以及如何使用图表将其可视化。探索的机会是无限的。
Dex交易量百分比在以太坊等公共区块链中,所有信息本来就是公共的。你所需要的只是寻找它。到目前为止,回答诸如一个项目有多少用户或DEX的每日交易量之类的问题很可能需要编写专门的脚本。运行脚本将涉及遍历块,解析信息,对其进行正确排序以及提取?数据。这既耗时又非常专业。像这样的脚本可能能够提取有关一个特定项目的信息,但需要进行大量修改才能将其幻化。此外,在所有区块上运行本身就是一个漫长的过程,需要一个完整的节点或对外部服务的许多单独查询。
用DuneAnalytics来救你
DuneAnalytics可以大大简化此过程的工具。这是一个基于Web的平台,可使用简单的SQL查询从预先填充的数据库中查询以太坊数据。无需编写专门的脚本,只需查询数据库即可提取几乎所有驻留在区块链上的信息。本指南涵盖了如何在Dune上搜索,编写和可视化基本查询的基础知识,因此你可以立即从零开始成为区块链分析师。即使你以前从未使用过SQL,几个基本示例就可以帮你走很长一段路。
DuneAnalytics如何运作的
DuneAnalytics的核心是将来自区块链的原始数据聚合到可以轻松查询的SQL数据库中。例如,有一个表查询所有以太坊交易,并很好地分为几列。列涵盖了发送者,接收者,金额等。
查询5个以太坊交易的示例所有这些信息都是免费提供的。免费套餐(需要开设帐户)包括:
搜索查询
编写新查询
创建可视化和仪表盘
所有免费查询均可供所有人查看和搜索。将私有的查询需要一个高级帐户。Pro账号还提供了一些其他好处,例如导出数据和去除图表中水印。
金色晚报 | 12月1日晚间重要动态一览:12:00-21:00关键词:Coinbase、以太坊2.0、灰度、以太坊网络难度
1. Coinbase声称MicroStrategy比特币4.25亿美元投资均通过其平台完成。
2. 以太坊2.0信标链主网正式启动。
3. 比特币大亨Jonathan Rowland竞购陷入困境的英国足球俱乐部Wigan Athletic。
4. 灰度董事总经理:机构资金流入表明比特币仍处于牛市早期。
5. 前二十名地址贡献了当前以太坊2.0抵押量的32.89%。
6. 数据:11月份USDT总发行量接近200亿美元。
7. YFI正式宣布与Sushiswap合作。
8. 新华社:比特币炒作风险陡增,回归区块链技术才是正途。
9. 以太坊网络难度达3616.42 TH创历史新高。[2020/12/1 22:46:27]
来自区块的信息经过几分钟的延迟后便被解析并填充到Dune的数据库中。除了原始数据块和交易,Dune还具有资产价格信息和专用表,例如UNI通证的所有持有地址。
现在,让我们熟悉如何使用Dune,现在无需编写任何代码,之后再看一些SQL基础知识。
开始使用DuneAnalytics
打开帐户后,主页将如下所示:
登录DuneAnalytics应用你看到的第一个屏幕是常用仪表盘的列表。仪表盘是其他用户通常围绕特定主题创建的查询和图表的集合。
以太坊gas价格仪表板有大量的仪表盘可供查询,涵盖了主流的DeFi项目,DEX交易量,以太坊交易的gas使用等等。
你可以在右侧的搜索栏中搜索特定项目上的仪表盘。如果你在热门仪表盘部分找不到相关的仪表盘,请确保选择“所有仪表盘”。
每个仪表盘均包含一个查询。每个图表都可以选择,查看和编辑。
从仪表盘视图的图表本身可以轻松操作。如:放大、选择图表的一部分等。双击图表标题,选择创建图表的特定查询。
从仪表盘中选择图形的示例在这里,你可以选择EditQeuery来查看查询或就地进行较小的操作,也可以选择fork来将查询复制到你自己的工作区中,之后进行自己的操作,保存更改并创建新图表。我们将在下一部分中介绍如何编辑和创建查询。
金色晨讯 | 澳本聪:BSV今年将按照比特币白皮书中的设计构建:1.泰国SEC或将对交易所将制定相同标准的数字资产业务数据库。
2.Joseph Lubin:以太坊是Dapp平台,比特币是货币实验。
3.澳本聪:BSV今年将按照比特币白皮书中的设计构建。
4.印度负责起草加密法规的委员会正处于审议的最后阶段。
5.韦氏评级:IEO(首次交易发行)或会成为加密技术的新热点。
6.QuadrigaCX交易所6个冷钱包自去年4月以来一直没有资金。
7.新墨西哥州FreeRang公司将成立加密货币银行。
8.Twitter CEO在推特晒BTC小费接收截图 或将支持BTC打赏功能。
9.G7金融行动特别工作组发布数字资产反初步指引。[2019/3/3]
搜索查询
就像搜索仪表盘一样,你可以从顶部栏中选择查询列表以搜索查询。
并非所有查询都添加到仪表盘,因此还有更多查询可供筛选。成功找到感兴趣的查询当然取决于作者标记并正确编写它。找到感兴趣的查询后,就可以选择,编辑或fork它,就像仪表盘中的任何查询一样。
仪表盘通常是查询的一部分,作者选择高亮显示。在查找有关特定项目的信息时,最好先从仪表盘开始,如果找不到所需的内容,在继续在查询列表里搜索。
如果你找不到想要的东西怎么办?是时候开始尝试使用SQL了。
编写查询
查找特定项目的信息时,其他Dune用户的仪表盘和查询是一个不错的起点,但是有时存在的查询不足以回答你正在研究的问题。
幸运的是,Dune使用标准的PostgreSQL查询语言。即使你以前从未编写过SQL,也可以使用它轻松进行一些基本查询。
首先,最有用的入门是仪表盘和其他人编写的查询。如前所述,所有公共查询都可以Fork,或者你可以简单地从其他人复制代码。这对于对满足你大部分需求的查询进行细微改动,或者只是从他人那里学习新功能和窍门,都非常有用。在这个简短的教程中,将头开始编写一些基本的查询,但是从中寻找相关的灵感总是很有用的。
创建一个空白查询要创建新查询,请从左上角选择选项。你会看到以下屏幕
金色快评 | SEC叫停追踪交易 实为类ETF产品 与数字货币无关:据外媒报道,美国证券交易委员会(SEC)称从即日起至9月20日暂停比特币追踪交易和以太坊追踪交易两个产品。这条消息引发了市场波动,BTC瞬间跌幅超过1%。金色财经对此研究发现:SEC周日会议的议题,主要集中在这两个追踪交易产品的性质上,他们认为上述产品实为类ETF产品。但迄今为止,SEC尚未批准任何数字货币ETF,所以对这种“擦边球”的产品做出叫停决定。这两个产品虽然在美国境外的纳斯达克斯德哥尔摩交易所上市,然而交易则主要在美国境内通过场外进行。这在一定程度上规避了监管,与ETF相比交易风险更高。SEC此举叫停的是类ETF基金产品,与BTC和ETH无关。建议投资者理性看待相关消息,谨慎投资,做好风险控制。[2018/9/10]
新查询视图的部分左侧的表列表包含可用于创建查询的所有现有SQL表。许多受欢迎的项目都有专门的表格,其中包含专门为其解析的信息。在查看特定项目时这些表可能非常有帮助。尽管它总是可能通过直接解析所有交易的数据字段来获得,但是这可能很麻烦并且并不总是准确的。
一些非常有用的表举例:
ethereum.transactions:以太坊上的所有交易
ethereum.logs:合约触发的以太坊事件的日志(例如:Transfer)
erc20.ERC20_evt_Transfer:发送通证时触发的所有转账事件
prices.layer1_usd:以分钟为单位的ETH和许多其他流行代币的价格表
第一个查询
每个查询都是以研究问题开始。第一步是明确定义我们想知道的内容。举一个简单的例子,让我们看一下最近的5笔交易。
很自然,我们会在包含所有以太坊交易的表中找到答案,因此我们首先在搜索字段中搜索该表。在此案例中,搜索transaction将显示相关表的列表,我们可以从中选择ethereum.transactions。
单击表列表中的表将显示该表中所有可用的列。在此案例中,我们使用ethereum.transactions表,其列为hash,index,gas_price等。
分析 | 金色盘面:THETA/USD短线拉升受阻:金色盘面综合分析:THETA/USD上方套牢盘较重,上涨受阻,注意回调风险。[2018/8/17]
单击双箭头将名称复制到查询字段中单击表或列名称旁边的双箭头将名称粘贴在查询部分中。这有助于避免手动复制粘贴和输入错误。
在这个简单的示例中,我们选择*,这意味着从表ethereum.transactions中选择所有列。
在运行此查询之前,必须注意一些查询可能需要很长时间才能完成,并且返回太多数据。尤其是在开始处理查询时,限制返回条目的数量以加快处理速度非常有用。这可以通过添加limit子句来完成,这会将返回的行数限制为指定的数。
编写查询后,按execute以运行它。
运行简单查询的结果显示在结果部分太好了,我们在结果部分中有一些结果,但这是以太坊有史以来的前5个交易。要获取最后一个,我们可以首先在其中一列中按降序对查询进行排序。在此案例中,块时间或块号可能是一个不错的选择
以太坊交易的排序结果现在,我们有5个来自最新区块的交易。表没有显示实时数据,创建块并将其添加到表之间存在一定的延迟。
与每项工作一样,强烈建议偶尔保存查询,尤其是在进行复杂的查询时(快捷键CtrlS/CmdS亦可以工作)。
简单查询可以在这里找到。
可视化数据
除了简单地存储数据之外,DuneAnalytics还提供了一种强大的可视化方法。在此示例中,我们来看一个稍微复杂的查询。我们想知道过去10天每天发送的ETH的总价值。这也将有助于演示过滤和按时间分组数据。
获取此数据的查询如下:
让我们分解一下
date_trunc(‘day’,block_time):我们不需要选择表中的所有列,而只需选择我们需要的列。在此案例中,需要区块时间和ETH的值。block_time是Unix时间戳格式,但是我们只对获取它的day部分感兴趣,因此我们截断了其余数据。
asas”Date“:为列指定别名。这不是必需的,但是可以使结果更易于阅读,并且图表自动具有更好的标签。
金色财经数据播报 日元交易占比下降,下降幅度达到10%:据cryptocompare数据显示,在比特币的交易货币占比中,日元占比初夏大幅下降,相比昨天60.34%的占比,今天日元占比大幅下降,跌至49.28%,跌幅达到11.06%,目前数据显示24小时交易额为2205.9亿日元;而美元在交易占比中出现较高的涨幅,目前占比为25.87%,相比昨天上涨了近5%左右,目前美元的24小时交易额度为10.6亿美元;USDT的交易占比也有所提升,目前占货币交易量的15.24%,涨幅达3.0%,交易额为6.2亿美元。[2018/3/27]
sum(value/1e18):由于我们汇总了所有已发送的ETH,因此我们使用SUM函数汇总数据。由于ETH的精度为18位小数,因此我们将数字除以1e18,得到的值以ETH为单位,而不是以Wei为单位
whereblock_time>now()—interval’10days’:仅查看过去10天的区块时间。这也将使查询运行更快
groupby1orderby1:1这是我们选择的第一列(date_trunc)。我们将结果按日期分组并按日期排序。由于我们按天对数据进行分组,因此需要对选择的所有其他列进行汇总。这里使用SUM,但也可以根据需要使用MAX,MIN,AVG或任何其他汇总函数。
执行查询将生成类似的结果。日期列表以及这些天转移的以太币总和。
现在我们要绘制此数据。选择NewVisualization以转到可视化菜单。
新建可视化按钮这将打开以下菜单
DuneAnalytics可视化菜单
有几种可视化类型可供选择。最有用的可能用*Chart(图表)*来绘制简单的图表,但是还有*Counter(计数器)*可以显示单个数据,(pivottable)数据透视表等等。
在此案例中,我们需要一个图表。我们要绘制发送的ETH的总和作为日期的函数。相应选择X和Y轴
就是这样,我们有一个基本图表。还有更多的可能性可以玩。图表样式,颜色,标签等。
最后,保存图表以添加到查询结果中。可以为每个查询创建多个可视化。
这里有示例可以参考。
稍微高级的查询
到目前为止,我们仅查看单个表中的查询。单个表可能没有我们需要的所有信息。为了说明这一点,让我们以前面的示例为例,但是我们不显示已发送的ETH数量,而是绘制以ETH表示的美元价值金额。
ethereum.transactions表没有任何价格数据。幸运的是,Dune为大量资产提供了每分钟的价格数据。
因此我们需要连接交易表和价格表:
让我们逐行将其分解:
首先,我们创建一个新的辅助表,其中包含我们需要的所有数据。以便以后在这个新表可以更轻松地汇总数据。
withtxsas:根据以下数据创建一个名为txs的新表
fromethereum.”transactions”e:从表ethereum.transactions中获取数据,并将表别名为e
joinprices.”layer1_usd”p:将表与价格表相连,并将其别名为p。联接操作将合并两个表的列
onp.minute=date_trunc(‘minute’,e.block_time):联接操作要求你通过on指定联接的列。这里,价格只会每分钟记录一次,因此我们希望将数据与创建区块的时间结合起来。这将为每个交易生成一个条目,但是现在带有来自价格表中的其他数据。
whereblock_time>now()—interval’10days’:和以前一样,仅获取过去10天的数据
andsymbol='ETH':价格表中有很多代币的价格,我们只对ETH的价格感兴趣
selectdate_trunc(‘day’,block_time)as“Date”,sum(value*price/1e18)as“Value”fromtxs:最后,我们运行与之前相同的查询,但是将ETH中的值乘以价钱。我们也从txs表中获取数据。
最后,绘制数据将得到下图
查询代码在这里
创建仪表盘
现在我们已经有了图表,我们可以将它们聚合到仪表盘中。点击“Create(创建)”->“NewDashboard(新仪表盘)”,为你的仪表盘起一个信息丰富的名称
可以使用仪表盘面板中的“AddWidget(添加窗口小部件)”按钮或每个查询中每个可视化中的“AddtoDashboard(添加到仪表盘)”按钮来添加窗口小部件。
简单仪表盘的示例
这个仪表盘在这里查看特定地址
最后,为了演示如何查找与特定地址相关的事件,我们将对查询进行一些修改,以查看与以太坊共同创建者VitalikButerin相关的地址所转移的ETH数量。
该查询与以前几乎相同,只是现在我们在from列上添加了一个过滤器。注意地址的格式。在Dune中使用地址时,它必须以\x而不是0x开头,因为你很可能会在块浏览器中找到它,这是一个非常常见的错误,因此必须指出这一点。查询及其结果在这里可以找到。
Dune的局限性
尽管Dune是一种超级强大的工具,但仍有一些错误和局限性值得一提。首先,当前仅可以查询事件,例如交易和转账。不能在某个特定区块查询区块链的状态。例如,要知道特定地址在某个区块的余额是多少,你将需要创建一个查询,以对该地址的所有转入和转出交易进行汇总。回答“以太坊的总供应量是多少”这个问题目前有点棘手。
尽管平台大多数时候都可以帮助你调试错误的查询,但有时查询会一直挂起直到超时。如果查询花费的时间不合理,则可能得试试保存它再重新加载网页。这些错误可能会在将来被消除。
查询有40分钟的限制,直到超时为止。查询大量数据和多个联接,可以会达到限制。尽可能考虑过滤查询(例如,区块时间或区块编号)。
最后,一个免费用户一次只能限制3个查询,如果要更新具有多个图表的仪表盘,这可能会受到限制。
接下来
本教程的目的是熟悉Dune的基本功能并尝试一些基本示例。这不是有关PostgreSQL的详尽教程,而PostgreSQL的资源非常丰富,但是希望可以引入一些基本命令来帮助你入门。
当然,还有很多要探索和发现的东西,包括用于各种DeFi项目的大量预制表,通过拉取请求添加自己的表等。
DuneAnalytics是区块链研究库中的超级强大工具。能够快速,简单,快速地查询大量数据真是一种超级大杀器。
本翻译由CellNetwork赞助支持。
来源:
https://medium.com/zengo/dune-analytics-introduction-tutorial-with-examples-d2c764600d6
译文出自:登链翻译计划
译者:翻译小组
参考资料
登链翻译计划:?
https://github.com/lbc-team/Pioneer
翻译小组:?
https://learnblockchain.cn/people/412
DuneAnalytics:?
https://www.duneanalytics.com/
主页:?
https://explore.duneanalytics.com/dashboards
这里:?
https://explore.duneanalytics.com/queries/10099/source
这里:?
https://explore.duneanalytics.com/queries/10100/source#20113
这里:?
https://explore.duneanalytics.com/queries/10129/source#20115
这里:?
https://explore.duneanalytics.com/dashboard/eth-value-transferred
这里:?
https://explore.duneanalytics.com/queries/10568
CellNetwork:?
https://www.cellnetwork.io/?utm_souce=learnblockchain
币汐柔:11.18比特币以太坊狂风暴雨后多头能否延续晚间操作建议投资就像坐过山车,有高峰有低谷,无论眼下是好是坏,都是暂时的,这就意味着行情的重要性,敬畏市场,顺势而为,才能在资本市场有所收获.
“存币即挖矿”邀请好友存币享+10%算力加成每日领收益|邀友加算力|年化高收益一、存币/充值即挖矿、余额可挖矿聚币Jubi于2020年11月11日全面开启“存币即挖矿”.
BiKi平台即将首发上线BULL,并开放BULL的充值、提现,并开放BULL/USDT交易对,具体时间如下:1、开放充值:11月18日15:002、开放提现:11月20日18:003、开放交易:.
据Decrypt消息,澳本聪已经提出一项议案,要求阻止比特币安全专家AndreasAntonopoulos朗读145条声称澳本聪犯有欺诈行为的消息的内容,这些消息的署名是区块链地址.
Bitcoiner辛西娅·米斯已经当选为美国参议员。她透露,她的优先事项之一是向国会同事解释比特币是“价值的重要存储库”.
这是一种只影响DeFi弱者的流行病,一旦感染,就没有治愈的方法。唯一的保护措施就是预防,如果你想让自己的协议熬过冬天,那么你就要让自己的代码得到彻底的审查,原文来自rekt.