如何玩转链上数据--Dune使用指南

本文介绍了Dune平台的基本使用方法,包括如何查看共享的看板、浏览Dune的广泛数据目录、创建自定义看板与查询,以及上传链下数据。

<!--StartFragment-->

Dune是什么?

<!--StartFragment-->

Dune是一个专门为Web3设计的加密数据平台,支持用户跨75+个区块链执行查询、数据可视化和导出,并与最大的数据社区互动。平台上已有75万多个由社区创建的仪表板,追踪DeFi、NFT以及项目或代币的基本指标,帮助用户在细粒度层面跟踪链上数据。

从dune获取信息,需要有sql基础,可以在这个网站学习。

<!--EndFragment-->

如何查看别人共享的面板?

<!--StartFragment-->

通过重要浏览社区贡献的看板,我们可以直接观察到许多有价值的链上数据分析范例。

<!--EndFragment-->

863f449d18a4af63a5938192296be9b.png

43e1af2a01bc838975af20649398bd0.png

12b8a7a21316743a26c382884ff71a1.png

Dune的数据目录?

<!--StartFragment-->

Dune 的数据目录涵盖了多种区块链的详细分析数据,主要分为以下几类:

  • 区块链数据:包括 EVM 兼容链和其他链的数据。
  • 精选数据:例如 DEX 交易、NFT 交易、标签等。
  • 社区数据:如 Farcaster、Lens Protocol、Snapshot 和 Reservoir 等社群数据。

一开始,我们可能不知道这个链上数据从何而来,其实,他们都得整合到一张张表里面。我们可以在这个目录分类下快速找到所需的数据资源,比如表格、字段,以及一些常用的查询语句。

<!--EndFragment-->

image.png

甚至还能有查询示例,大家可以从这里学习最基础的查询语句。 image.png

怎样创建自己的看板并编写查询?

f3e06fbc0ca0345249138375eb11a96.png

举例--查询并对比两个网络的交易量

  1. 创建一个查询

image.png

SQL代码如下:

SELECT
  DATE_TRUNC('day', block_time) AS day,
  COUNT(*) AS num_txns,
  'scroll' AS network
FROM scroll.transactions
WHERE
  block_time >= TRY_CAST('2024-07-01' AS TIMESTAMP)
GROUP BY
  1
UNION ALL
SELECT
  DATE_TRUNC('day', block_time) AS day,
  COUNT(*) AS num_txns,
  'zksync Era' AS network
FROM zksync.transactions
WHERE
  block_time >= TRY_CAST('2024-07-01' AS TIMESTAMP)
GROUP BY
  1
ORDER BY
  day

<!--StartFragment-->

我们来解释这段SQL代码:这段SQL代码用于统计两个区块链网络(Scroll和zkSync Era)从2024年7月1日起每天的交易量,并将结果按日期显示。

  • Scroll 网络数据查询

    • scroll.transactions 表中按天 (DATE_TRUNC('day', block_time)) 汇总。
    • 统计每一天的交易数量(COUNT(*) AS num_txns),并命名网络为 'scroll'
    • 使用 WHERE 子句过滤,从2024年7月1日(TRY_CAST('2024-07-01' AS TIMESTAMP)) 起的 block_time 数据。
  • zkSync Era 网络数据查询

    • 结构与 Scroll 查询类似,但源数据表为 zksync.transactions,并将网络名称设置为 'zksync Era'
    • 同样从2024年7月1日起获取交易数据。
  • 合并结果和排序

    • 使用 UNION ALL 合并两次查询结果,使两个网络的数据在同一表格中显示。
    • 最后,按 day(日期)排序,确保结果从早到晚排列,便于对比。

<!--EndFragment-->

  1. 运行代码 image.png

  2. 可视化 如果我们要生成一个折线图,还得在下面设置X轴、Y轴和Group:

image.png

如何上传并查询链下数据?

为什么需要链下数据,看了这个就会明白: Dune 如何通过自动支付帮助 COW 协议了解用户行为。 这里提到:<!--StartFragment--> 为了实现计算解算器奖励的自动化,CoW 协议使用了 Dune 强大的数据平台。CoW 首先使用数据上传功能将其内部数据上传到 Dune 。然后,团队结合使用内部数据库和 Dune 的链上数据来准确计算奖励。然后将计算出的数据发送回 CoW 以分配奖励付款。整个过程每周进行一次,确保定期及时付款。

<!--EndFragment-->

3d41a5e727ef86afd87d80934dfcc70.png

image.png

<!--StartFragment-->

Dune 还承载着由第三方数据提供商提供的对 web3 生态系统很重要的链下数据

image.png

<!--EndFragment-->

<!--EndFragment-->

点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
在web3摘不拿拿
在web3摘不拿拿
我是一个 Web3 技术“摘蕉人”!在登链社区这片“热带雨林”里到处探索,寻找那些独特的“香蕉”——创新的项目、令人兴奋的技术。我会时不时写点文章分享我的“摘焦”心得,期待和大家一起讨论、交流和成长。