  Public blockchains have spurred the growing popularity of decentralized
transactions and smart contracts, but they exhibit limitations on the
transaction throughput, storage, and computation. To avoid transaction
gridlock, public blockchains impose large fees and per-block resource limits,
making it difficult to accommodate the ever-growing transaction demand.
Previous research endeavors to improve the scalability of blockchain through
various technologies, such as side-chaining, sharding, secured off-chain
computation, communication network optimizations, and efficient consensus
protocols. However, these approaches have not attained a widespread adoption
due to their inability in delivering a cloud-like performance, in terms of the
scalability in transaction throughput, storage, and compute capacity. In this
work, we determine that the major obstacle to public blockchain scalability is
their underlying unstructured P2P networks. We further show that a centralized
network can support the deployment of decentralized smart contracts. We propose
a novel approach for achieving scalable decentralization: instead of trying to
make blockchain scalable, we deliver decentralization to already scalable cloud
by using an Ethereum smart contract. We introduce Blockumulus, a framework that
can deploy decentralized cloud smart contract environments using a novel
technique called overlay consensus. Through experiments, we demonstrate that
Blockumulus is scalable in all three dimensions: computation, data storage, and
transaction throughput. Besides eliminating the current code execution and
storage restrictions, Blockumulus delivers a transaction latency between 2 and
5 seconds under normal load. Moreover, the stress test of our prototype reveals
the ability to execute 20,000 simultaneous transactions under 26 seconds, which
is on par with the average throughput of worldwide credit card transactions.
