Space and Time Blockchain Indexing
Last week, Space and Time launched in beta. Over the next several weeks, we'll be highlighting some of the product features that developers now have access to with Space and Time. Today, we're introducing the Space and Time blockchain indexing service.
What it is and why we built it
Because a blockchain is decentralized, blockchain data is distributed across multiple nodes, and there is no built-in way to query this data. If you want to work with blockchain data in a meaningful way, you have to extract it from the blockchain and transform it into a relational state, which is an extremely complex process that an individual developer likely doesn't have time or resources for. As a result, developers that need to leverage blockchain data typically pay for an indexing tool, like The Graph, to provide it for them. But when you're already paying for transactional database to power your app, a data warehouse for analytics, ETL tools to move data around, and oracles to write data back to the chain, paying for yet another service just to access blockchain data can really add up.
Space and Time provides all of these services in a single decentralized deployment. The Space and Time blockchain indexer abstracts away the complexity of blockchain data by automatically reading the data on all major blockchains, decoding it, and writing it to relational database tables that users can access at no cost. Today, we index Ethereum, Polygon, BNB Chain, Sui, and Avalanche, and we're continually adding support for more chains.
How it works
1. Data generated from the blockchain
Space and Time queries individual blockchain archival nodes with RPC calls. By querying these archival nodes, we can retrieve both realtime and historical blockchain data.
2. Extracting the data from blockchain networks
Space and Time automatically extracts finalized block data from the blockchain networks in three ways:
- Realtime: Polls the realtime block from blockchain nodes.
- Historical: Polls previous blocks as needed to create a complete historical record of blockchain data.
- Decode event data: You can request decoding from your smart contracts to a new table.
3. Coming to consensus
Consensus is a critical component of the Space and Time platform. The network, formed from BFT consensus services running on each Validator node, will validate and agree on the blockchain data being loaded, thereby eliminating the need for any trusted intermediary.
4. Ingesting data into the data warehouse
Once consensus is achieved, the processed data is inserted into the data warehouse, where it can be easily queried.
What it enables
Access realtime blockchain data
Connect to tamperproof, relational, realtime blockchain data we've indexed from major chains. You can also access data for specific protocols, including Uniswap, Aave, and hundreds more.
Run cross-chain queries from your smart contract
Send data from Polygon to your smart contract on Avalanche. With Space and Time, your smart contract can ask questions about both data on its own chain and data on other chains.
Query your own smart contract events
Create new tables from your smart contract events in just a few clicks. You can submit your smart contract for indexing and we'll decode the event data and write it to a new table in Space and Time.
Join on-chain and off-chain data
Join our indexed blockchain data with your off-chain data loaded into Space and Time. Build your dapp with tamperproof on-chain and off-chain data.