Specification: A lightweight real-time data streaming engine with an expressive DSL for Ethereum.

December 30, 2024

Motivation

Ethereum blockchain ecosystem has evolved beyond single-chain architectures, with Ethereum and its layer 2 solutions (the Superchain) processing substantial data volumes across multiple networks. Ethereum processes blocks approximately every 12 seconds, with each block containing up to 10MB of data. Layer 2 solutions like Unchain, Ink, and Optimism process additional data at varying frequencies. While existing blockchain data solutions offer various querying options, they often face challenges with real-time data processing and cross-chain compatibility. The complexity lies not in the query languages themselves, but in efficiently handling high-frequency updates, maintaining low latency across multiple networks, and correlating events across different chain architectures.

Key Reasons:

  1. Real-Time Processing: Applications like MEV searchers, trading systems, and block builders require immediate access to specific blockchain events. The streaming architecture processes blocks as they arrive, delivering relevant data with minimal latency.
  2. Memory Efficiency: By processing data streams in-memory without persistence, Sieve minimizes resource usage while maintaining high performance. The filter engine performs efficient property-based filtering using configurable conditions to process transaction data in real-time
  3. Cross-Chain Compatibility: With the growing ecosystem of L2s and sidechains, Sieve provides a unified interface for filtering data across multiple chains, abstracting the complexity of different protocols and endpoints.
  4. Developer Experience: The ORM-like DSL provides an intuitive interface for defining complex filter conditions, making it accessible.

📑 Download Technical Design Specification (PDF)