Launching 0xFast: 10x Faster, 3x Cheaper Web3 API Platform
Today, I’m excited to launch https://www.0xfast.com — A 10x Faster, 3x Cheaper Web3 API Platform, with a mission to “Make Web3 Experience Fast”.
Since leaving Dgraph, I’ve been working on indexing web3 data. My initial attempt was to use a fork of Dgraph to achieve that. And while it seemed promising, I experienced the futility of trying to use a database designed around providing ACID guarantees, for web3 data which is immutable and already has those guarantees.
With that learning, I built a new indexing system from scratch, designed for blockchain (/immutable) datasets. This system is built on a novel concept of storage and index separation. The index is built and sits separately from the storage. This allows the index to be a fraction of the size of the entire storage data. Both storage and index get compressed separately, using techniques relevant to the nature of the data, to further reduce disk usage.
The index is used to run all the searches upfront. Then, for those results, the data is fetched from storage and streamed simulatenously to speed up time to first response. These concepts were in play (though, to a lesser degree) both in Dgraph and Badger. Blockchain provided a perfect playground to push these concepts front and center.
Using these techniques, the system is able to achieve a factor faster read and write speeds, and can scale to any blockchain workloads out there, without barely touching hardware boundaries.
I also learnt how cumbersome it is to bring up a full archival node. Geth takes too much space. Erigon is very selective about what kind of storage it would work with — it doesn’t like hard drives or NFS for example. Hetzner, the leading Europen public cloud provider, outright bans any web3 node instances.
So, while my previous projects started in open source — for this one, it made a lot of sense to build an easily consumable service. A service which just takes care of all of these complexities for the user.
This is what led me to build 0xfast.com
When you have terabytes of data, 0xFast makes it possible to work with it at Gigabit scale. 0xFast makes blockchain scale possible. That is, download blockchain data fast. Not weeks, or days. Hours. Faster than using any existing blockchain service, or even running your own nodes (I know. I’ve tried).
0xFast supports most Ethereum JSON-RPC APIs today. It also supports streaming blocks (documentation to be updated). Next, it would tackle the big problem of serving traces and then do the same for Polygon.
So, try it out: https://www.0xfast.com