
RPC polling does not scale into product queries. The path is subgraphs for history, decoded event tables for questions, and websocket feeds for the live edge — with block-recorded cursors so replays stay deterministic.
The pipeline shape
- Schema from questions — balances, positions, histories first; tables second.
- Decode at ingest — logs, metadata and pricing resolved once, queried often.
- Backfill with checks — history loaded and reconciled before launch.
- Reorg drills — corrections verified, feeds labelled, report published.
Result: sub-second portfolio reads and analytics tables product and risk teams query without touching a node.
Related: dApp architecture · DeFi engineering · Data services