Sharding is a horizontal scaling technique borrowed from database architecture that divides a blockchain network into multiple parallel chains (shards), each handling its own transactions and state — dramatically increasing total network throughput. Rather than every node processing every transaction, each node only needs to validate its assigned shard.
The Scalability Problem
All nodes in a traditional blockchain (like Bitcoin or early Ethereum) must:
- Receive and validate every transaction
- Store the full history and state
This creates a scalability trilemma — it’s hard to simultaneously achieve decentralization, security, and scalability. Full replication limits throughput to what a single machine can process (~15–30 TPS for Ethereum pre-scaling).
How Sharding Works
The network is split into N shards, each with its own subset of validators, state, and transaction history.
- Users and contracts are assigned to specific shards (by address range or hash).
- Transactions that involve parties on the same shard execute locally with standard finality.
- Cross-shard transactions are more complex — they require coordinating state across shard boundaries.
A Beacon Chain (or main chain) typically coordinates shard activity, handles validator randomness, and finalizes shard blocks.
Types of Sharding
Execution Sharding — Different shards process different transactions in parallel. This maximizes throughput but makes cross-shard composability complex: a smart contract call spanning two shards requires two-phase coordination.
Data Sharding — Shards only store and make available data blobs; execution still happens on the base layer or rollups. This is simpler to implement and is the approach Ethereum is pursuing via Danksharding.
Ethereum’s Sharding Plan (Danksharding)
Ethereum originally planned full execution sharding — 64 parallel shard chains. However, the rise of rollups as the primary scaling solution changed the roadmap.
The current plan focuses on Danksharding:
- Shards serve as pure data availability layers, not execution environments
- Rollups post their data to shard blobs
- Full Danksharding could provide ~1.3 MB/s of data bandwidth, supporting hundreds of rollup transactions per second
EIP-4844 (Proto-Danksharding), deployed in March 2024, is the first step — introducing blob transactions to Ethereum without full sharding, immediately cutting rollup fees by over 80%.
Alternative Approaches
| Project | Sharding Approach |
|---|---|
| NEAR Protocol | Nightshade execution sharding — shard chunks merged into one block |
| Elrond (MultiversX) | Adaptive state sharding — number of shards scales with network load |
| Harmony | 4 shards with cross-shard atomic transactions |
| Zilliqa | Transaction sharding (not state) — pioneered the concept in public blockchains |
Cross-Shard Challenges
Sharding introduces significant complexity:
- Atomic composability — DeFi relies on smart contracts calling other contracts atomically. Cross-shard calls break this.
- Data availability — Each shard must prove its data is available for validators of other shards to check.
- Validator assignments — Validators must be randomly assigned to shards to prevent targeted attacks. Randomness must be secure and unpredictable.
- State synchronization — Moving assets between shards requires handshake protocols.
These challenges are why rollup-centric scaling (where rollups handle composability and shards only handle data) is now preferred over execution sharding.
History
- 2017 — Ethereum begins researching sharding as the primary scaling solution.
- 2019–2020 — Beacon Chain design incorporates shard coordination; original plan: 64 execution shards.
- 2022 — Rollup-centric roadmap announced — execution sharding deprioritized in favor of data sharding + rollups.
- 2024 — EIP-4844 (Proto-Danksharding) ships — blobs provide first taste of sharded data availability.
- Future — Full Danksharding — targeted to ship across multiple Ethereum upgrades through 2026+.
Common Misconceptions
“Sharding means splitting the blockchain into pieces.”
Sharding adds parallel capacity — all shards are part of the same network. The main chain (Beacon Chain on Ethereum) coordinates everything and ensures global finality.
“Ethereum already has sharding.”
Ethereum has blob data availability (EIP-4844) but not full sharding. Data sharding (Danksharding) is still in development.
“Sharding automatically solves DeFi scalability.”
Execution sharding introduces cross-shard composability problems that break many DeFi use cases. This is why Ethereum switched to the rollup-centric + data sharding model.