当前位置: 首页 > 软件库 > 数据库相关 > >

ethereum-etl

授权协议 MIT License
开发语言 C/C++
所属分类 数据库相关
软件类型 开源软件
地区 不详
投 递 者 洪增
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Ethereum ETL

Ethereum ETL lets you convert blockchain data into convenient formats like CSVs and relational databases.

Do you just want to query Ethereum data right away? Use the public dataset in BigQuery.

Full documentation available here.

Quickstart

Install Ethereum ETL:

pip3 install ethereum-etl

Export blocks and transactions (Schema, Reference):

> ethereumetl export_blocks_and_transactions --start-block 0 --end-block 500000 \
--blocks-output blocks.csv --transactions-output transactions.csv \
--provider-uri https://mainnet.infura.io/v3/7aef3f0cd1f64408b163814b22cc643c

Export ERC20 and ERC721 transfers (Schema, Reference):

> ethereumetl export_token_transfers --start-block 0 --end-block 500000 \
--provider-uri file://$HOME/Library/Ethereum/geth.ipc --output token_transfers.csv

Export traces (Schema, Reference):

> ethereumetl export_traces --start-block 0 --end-block 500000 \
--provider-uri file://$HOME/Library/Ethereum/parity.ipc --output traces.csv

Stream blocks, transactions, logs, token_transfers continually to console (Reference):

> pip3 install ethereum-etl[streaming]
> ethereumetl stream --start-block 500000 -e block,transaction,log,token_transfer --log-file log.txt \
--provider-uri https://mainnet.infura.io/v3/7aef3f0cd1f64408b163814b22cc643c

Find other commands here.

For the latest version, check out the repo and call

> pip3 install -e . 
> python3 ethereumetl.py

Useful Links

Running Tests

> pip3 install -e .[dev,streaming]
> export ETHEREUM_ETL_RUN_SLOW_TESTS=True
> export PROVIDER_URL=<your_porvider_uri>
> pytest -vv

Running Tox Tests

> pip3 install tox
> tox

Running in Docker

  1. Install Docker: https://docs.docker.com/install/

  2. Build a docker image

     > docker build -t ethereum-etl:latest .
     > docker image ls
    
  3. Run a container out of the image

     > docker run -v $HOME/output:/ethereum-etl/output ethereum-etl:latest export_all -s 0 -e 5499999 -b 100000 -p https://mainnet.infura.io
     > docker run -v $HOME/output:/ethereum-etl/output ethereum-etl:latest export_all -s 2018-01-01 -e 2018-01-01 -p https://mainnet.infura.io
    
  4. Run streaming to console or Pub/Sub

     > docker build -t ethereum-etl:latest -f Dockerfile .
     > echo "Stream to console"
     > docker run ethereum-etl:latest stream --start-block 500000 --log-file log.txt
     > echo "Stream to Pub/Sub"
     > docker run -v /path_to_credentials_file/:/ethereum-etl/ --env GOOGLE_APPLICATION_CREDENTIALS=/ethereum-etl/credentials_file.json ethereum-etl:latest stream --start-block 500000 --output projects/<your-project>/topics/crypto_ethereum
    

Projects using Ethereum ETL

  • Google - Public BigQuery Ethereum datasets
  • Nansen - Analytics platform for Ethereum
  • ethereum-etl学习1 > ethereumetl export_blocks_and_transactions --start-block 0 --end-block 500000 \ --blocks-output blocks.csv --transactions-output transactions.csv \ --provider-uri https://mainnet.inf

  • ethereum-etl学习3 > ethereumetl stream --start-block 500000 -e block,transaction,log,token_transfer --log-file log.txt \ --provider-uri https://mainnet.infura.io/v3/7aef3f0cd1f64408b163814b22cc643c ​ 实

 相关资料
  • 分片原本是数据库设计中的一种概念,指将数据库中的数据分割成多个数据分片,让数据的读写可以并行处理。当进行搜索时,仅需访问特定分片即可获得搜索结果,减少了服务器访问压力,从而提高数据库性能。 在区块链中,分片指将区块链中的节点分成若干个组,每组节点组成一个分片。原先区块链中每个节点需要对网络中的每笔交易进行验证,分片后,每个节点仅需处理网络中的一小部分交易。各分片并行工作,从而实现对区块链的横向扩展

  • Love-Ethereum If winter comes , can spring be far behind ? ( P. B. Shelley , British poet ) 区块链最大的问题就是人们理解区块链需要时间 | 版本说明 | 区块链 | 以太坊 | 区块链开源学习项目 | 补充资料| 参与贡献| Progress 版本说明 Frontier 简单的介绍区块链基础知识,通过阅读此

  • Presto Ethereum Connector Unleash the Power of Presto Interactive SQL Querying on Ethereum Blockchain Introduction Presto is a powerful interactive querying engine that enables running SQL queries on

  • awesome-ethereum Awesome Ethereum & Dapps Resources About Ethereum Ethereum What is Ethereum ? Github Wiki Wikipedia Blog Reddit Youtube Twitter Facebook Forum Github / Source codes Read the full user

  • The Fastest and most Advanced Ethereum Client. » Download the latest release « Table of Contents Description Technical Overview Building 3.1 Building Dependencies 3.2 Building from Source Code 3.3 Sim

  • Ethereum Wiki 是由社区维护的 Wiki ,涵盖了以太坊平台的各种信息,包括用于智能合同开发的广义区块链 Ethereum 和私有低级数据报通信平台 Whisper 。 包括: Serpent 指南 以太坊 Wiki 目录 以太坊开发计划 以太坊术语表 以太坊白皮书 网络状态 …… Ethereum(以太坊)是一个平台和一种编程语言,使开发人员能够建立和发布下一代分布式应用。 Ethe