Skip to main content
Blockchains, especially those that run smart contracts, have turned into real treasure troves of data and can be viewed as datasets that aggregate millions of smaller datasets within them. Kamu allows you to directly use data from any EVM-compatible blockchain. Currently we support reading logs, but access to fully reconcilable transaction information is planned.

Configuring RPC Node

Data is read directly from blockchain nodes, so to ingest data your CLI needs to have the RPC URL configured:
You can also specify nodeUrl directly in the (see below).

Accessing Specific Log

Logs can be accessed using (full example):
The above source declaration will use filter to create the most efficient RPC request to the blockchain node and stream the events using . The output of the EthereumLogs fetch step is a data structure that corresponds directly to the output of eth_getLogs endpoint, with the addition of optional decoded event field:

Decoding Raw Logs in SQL

It’s also possible to ingest raw logs without decoding them with signature. In this example we read all logs of the specific contract and decode them later in SQL (full example):
The above code is using eth_try_decode_event function provided by datafusion-ethers extension to the SQL engine. Upon success this function returns a decoded event as JSON string, which we then take apart using datafusion-functions-json set of functions.

Future Work

Blockchain data satisfies all properties of an ODF dataset (history-preserving, reproducible, verifiable), with differences primarily in encoding. We therefore see Kamu NOT as an indexer (solutions that copy data from blockchains into queryable databases, leading to recentralization concerns). Instead we see blockchains as a natural extension of the Open Data Fabric network. Integrating blockchains as data sources and consumers of data via Kamu Oracle makes Kamu the first system where you can go through the whole cycle (reading on-chain data, merging it with off-chain data, providing data back on-chain to a smart contract) within one solution, with just SQL, with full verifiability. Our future work will focus on further erasing the boundary between on- and off-chain data.
Last modified on March 16, 2026