使用reth-indexer构建您自己的高效区块链数据湖

使用reth-indexer构建您自己的高效区块链数据湖

🚀 项目简介

reth-indexer是一个强大的工具,它直接从reth数据库中读取信息,并将这些数据快速索引到传统或非传统的数据库(如Postgres和Google Cloud BigQuery)中。无需额外的设置,只需一个简单的JSON配置文件,就能暴露一个API供您查询链上数据。

Demo

🚧 免责声明

这是一项研发项目,可能存在未完善的功能和bug。在rust环境下,我们还有很多优化的空间,欢迎提交PR以使项目更快更好。

💡 为什么选择reth-indexer?

通常,获取区块链数据需要依赖Infura或Alchemy等服务,费用可能随着数据量的增长而增加,尤其是当您需要大量的事件数据时。JSONRPC协议的网络延迟问题使得大量数据的快速获取变得困难。reth-indexer解决了这些问题,通过直接与本地reth节点数据库交互,实现高速的数据索引,支持您在自有的基础设施上自由扩展。

ועדת כל צדדים מה umiejętności — מתכנתים, ניתוחי נתונים,פתחני מודלים למידה עמוקה ואנשים שמחפשים מידע התחלף בקופסא אחד לשימוש פרודוקציונלי או דיווחים.

💫 项目特点

  • 自动化数据库表创建(Postgres、GCP Biquery等)
  • 自动应用索引,便于快速查询
  • 多存储库同步(例如,同时向Postgres和BigQuery写入索引)
  • 任意合约事件索引
  • 多个合约事件同步
  • 过滤器支持,可对输入类型进行精细筛选
  • 按区块范围快照
  • 无代码需求,通过易于编辑和理解的JSON配置文件驱动
  • 自建基础设施,可按需扩展
  • 即插即用的API(目前仅限Postgres实现)
  • 抽象化设计,方便扩展至更多数据库/数据仓库

📈 基准测试

性能因区块范围和事件频率而异,但大致如下:

  • 每秒大约处理30,000个事件
  • 在400毫秒内扫描约10,000个没有事件的区块

与其他解决方案相比,例如:

  • 针对The Graph Hosted (Substreams),reth-indexer在执行特定任务时速度快了73.5倍!

🔍 如何工作

reth-indexer逐块扫描reth数据库,查找与配置文件中的事件映射匹配的事件,然后将数据批量写入CSV文件,最后导入到Postgres数据库(或其他已配置的数据库)。利用Bloom过滤器跳过不必要的块,并借助CSV和Postgres的COPY语法来加速大量记录的写入速度。

🛠️ 如何使用

  1. 克隆项目:git clone https://github.com/joshstevens19/reth-indexer.git
  2. 创建配置文件:cp reth-indexer-config-example.json reth-indexer-config.json
  3. 运行RUSTFLAGS="-C target-cpu=native" CONFIG="./reth-indexer-config.json" cargo run --profile maxperf --features jemalloc

💡 提示:您可以使用CONFIG标志运行多个并行的索引器。

👋 API集成

除了同步数据,还可以启动一个基础API,提供REST API接口供您查询数据。虽然简单,但这可以作为查询数据的一个快捷方式。

reth-indexer 是一款强大的开源项目,专为那些希望从区块链中挖掘价值,且不想受制于高昂服务费或缓慢访问速度的人们而设计。立即尝试,释放您的数据潜能吧!

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

余靖年Veronica

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值