Scaling Ethereum: Horizontal/Vertical

Apr 5, 2022

Distributed databases generally scale in two directions. Vertical scaling means increasing the size of each node – adding more CPU or memory. Horizontal scaling usually takes the form of sharding data across different nodes – e.g., all users on the the west coast use the "West" partition of the database, and all users on the east coast use the "East" partition. Sharding is complex, but nearly all modern databases support it.

Ethereum has already vertically scaled – the requirements for running a node are already prohibitive to most users: recommended 16 GB or more of RAM, SSD, and 25+ Mbit/s bandwidth, 500 GB storage.

Solana, another L1, has even more extreme requirements: 128GB or more of RAM. 12 cores, 1 TB storage.

There's a third general pattern that's emerged to scale massive data warehouses like Snowflake. It's the separation of compute and storage. Phyiscally separated, logically integrated. This architecture has serious scaling benefits: (1) right-sizing workloads that are more compute-heavy or storage-heavy (2) allows for a more usage-based pricing model.