- Simplicity: data can be accessed with help of just a couple of libraries, no framework needed.
- Code maintainability: since all stateful data transforms (aggregations) are written in SQL, the code is vectorized by default. No boilerplate batching code is needed.
- Performance: the combination of stateless decoding + stateful transforms via highly optimized OLAP analytic engines such as ClickHouse ensures that both CPU and disk bandwidth are used efficiently.
src/transfers.sql
ds
abstracting away the details of data retrieval and transformation. Its definition is somewhat long but straightforward.
Eventually we will have a library of reusable components such as the TransferPreBalancesStream
class that implements common raw data processing subtasks (such as fetching and decoding all DEx swaps from major Solana exchanges).
And that’s it for the pipes’ architecture explanation! You can now explore these three end-to-end pipelines with more real world utility than this little demo.
Examples
Swaps on Solana
Track swap activity across Solana DEXs—normalize token pairs and volumes,
and write 5-minute OHLCV data directly to ClickHouse for fast, reliable
analysis.
Metaplex NFT metadata
Stream metadata from Metaplex mints—including names, symbols, URIs, and
accounts—and store it in ClickHouse, ready for efficient indexing and
lookup.
pump.fun tokens
Track token launches on pump.fun in real time—capture names, symbols, and
mints as they’re created, and monitor on-chain activity from the start.
More examples coming soon! We’re working on additional examples to showcase
more use cases and features of Soldexer.