Commit fd525a4
authored
feat(notebooks): add block propagation by size analysis with regional breakdown (#50)
Adds a new notebook analyzing block propagation timing relative to block
size, with regional breakdown from two data sources.
### New notebook: Block propagation by size
(`09-block-propagation-size`)
Analyzes how block size affects propagation timing, comparing MEV vs
local blocks with corrected timing that isolates network propagation
from block building overhead.
**Key visualizations:**
- Size distribution by builder type (histogram)
- Compression ratio analysis
- MEV timing breakdown (building vs network time)
- Corrected first seen by size bucket (box plots)
- Regional propagation comparison (Sentries vs Contributoor)
- Regional CDF faceted by size bucket and builder type (4×2 grid)
- Propagation spread analysis
- Anomaly detection (z-score, residuals)
### Regional data sources
| Source | Description | Node count |
|--------|-------------|------------|
| **Sentries** | EthPandaOps libp2p gossipsub monitoring | ~50-100 |
| **Contributoor** | Community beacon API event collection | ~875 |
Both sources provide per-region (EU, NA, AS, OC) timing data, enabling
comparison of propagation patterns across geographic regions and
infrastructure types.
### New query modules
| File | Description |
|------|-------------|
| `queries/block_propagation_by_size.py` | Main propagation query +
Sentries regional query |
| `queries/block_propagation_contributoor.py` | Contributoor regional
query |
### Infrastructure changes
- **Multi-database ClickHouse support** in `scripts/fetch_data.py`
- New `get_client(database)` function routes queries to appropriate host
- Per-query database selection via `database` field in pipeline.yaml
- **CI workflow updates** in `.github/workflows/sync.yml`
- Added `CONTRIBUTOOR_CLICKHOUSE_*` environment variables for
Contributoor queries1 parent 52058c7 commit fd525a4
6 files changed
Lines changed: 1904 additions & 13 deletions
File tree
- .github/workflows
- notebooks
- queries
- scripts
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
125 | 125 | | |
126 | 126 | | |
127 | 127 | | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
128 | 132 | | |
129 | 133 | | |
130 | 134 | | |
| |||
0 commit comments