Metis Hyperion supports Ethereum Pectra fork

MetisDB

Overview

MetisDB is a cutting-edge storage solution tailored for high-throughput, low-latency Layer 2 networks. It optimizes transaction processing, state synchronization, and historical data management by separating state commitment from state storage, ensuring unmatched performance and scalability.

Core Design Principles

State Commitment and Storage Separation

MetisDB follows a novel architectural approach that separates state commitment from storage:

  • State Commitment Layer: Manages active blockchain state for rapid access and updates
  • State Storage Layer: Focuses on historical data maintenance for archival and query purposes

This separation allows MetisDB to optimize both real-time processing and historical data retrieval, addressing different performance needs simultaneously.

Multi-Version Concurrency Control (MVCC)

MetisDB implements MVCC to enable concurrent state access and modifications:

  • Allows multiple transactions to read and write state concurrently
  • Prevents blocking during parallel execution
  • Supports efficient rollbacks in speculative execution environments
  • Reduces contention during high-throughput operations

Asynchronous I/O Processing

To minimize latency and maximize throughput, MetisDB employs asynchronous I/O:

  • State changes are committed asynchronously
  • Write operations don't block transaction processing
  • Allows continuous transaction execution at high speeds
  • Maintains ACID guarantees through careful transaction management

Key Components

State Commitment Layer

The State Commitment Layer is optimized for active state access and modification:

  • Memory-Mapped Merkle Trees: Provides nanosecond-level state access
  • Transaction Delta Processing: Efficiently applies state changes and generates block hashes
  • Write-Ahead Log (WAL): Records changesets asynchronously for durability
  • Snapshot Management: Creates periodic snapshots to accelerate recovery

State Storage Layer

The State Storage Layer handles historical data storage and retrieval:

  • Raw Key-Value Storage: Minimizes overhead through optimized data structures
  • Asynchronous Pruning: Removes outdated data without affecting active processes
  • Flexible Backend Support: Compatibile with various storage solutions (RocksDB, etc.)

Integration With Parallel Execution Framework

MetisDB is tightly integrated with the Metis Parallel Execution Framework:

  1. Transactions are executed in parallel by the execution framework
  2. State access and modifications are tracked through MVCC
  3. Conflict detection and resolution is performed automatically
  4. Valid state changes are committed asynchronously

Developer Usage Guidelines

When working with MetisDB in your applications:

  • Use batch operations for multiple state changes when possible
  • Subscribe to state updates rather than polling for changes
  • Leverage MVCC for concurrent operations
  • Use read-only queries for historical data

Performance Tuning

MetisDB performance can be optimized with the following configurations:

  • Memory Allocation: Increase memory allocation for state caching
  • Snapshot Frequency: Adjust snapshot intervals based on workload
  • Pruning Strategy: Configure state pruning policies for storage efficiency
  • I/O Optimization: Tune I/O parameters based on underlying hardware

Future Development

Upcoming enhancements to MetisDB include:

  • Enhanced ZK-friendly Merkle tree support
  • Distributed state storage for horizontal scaling
  • Advanced analytics and indexing capabilities
  • Specialized storage patterns for AI and compute-intensive applications

Conclusion

MetisDB represents a fundamental advance in blockchain state management, addressing the core challenges of transaction throughput, state synchronization, and historical data efficiency. Its innovative architecture ensures the Metis network can deliver exceptional performance for next-generation decentralized applications.