Comment by pnutjam
2 days ago
The most consistent misunderstanding I see about the cloud, is disk I/O. Nobody understands how slow your standard cloud disk is under load. They see good performance and assume that will always be the case. They don't realize that most cloud disks use a form of token tracking where they build up I/O over time and if you have bursts or sustained high I/O load you will very quickly notice that your disk speeds are garbage.
For some reason people more easily understand the limits of CPU and memory, but overlook disk constantly.
At one time I had a project to run a cryptocurrency node for BSC (this is basically a fork of Ethereum with all the performance settings cranked up to 11, and blocks centrally issued instead of being mined). It's very sensitive to random access disk throughput and latency. At the time I had a few tiny VPS on AWS and a spinning drive at home, so I evaluated running it there. Even besides the price, you simply cannot run it on AWS EBS because the disk is just too slow to validate each block before the next one arrives. I spent a few hundred dollars and bought an NVMe SSD for my home computer instead.
Even without that, you are still at the heart of it accessing over a SAN like interface with some sort of local cache. Getting an actual local drive on AWS the performance is night and day
Sure, you can work around it; but it blows up the savings alot of people expect when they don't include this in their math.
Also, SAN is often faster then local disk if you have a local SAN.
How is a SAN faster than a local disk? Any references / recommendations?
2 replies →
What could I read to inform myself better on this topic? It is true I had not seen this angle before
This looks pretty informative. The terminology can be hard to follow. https://medium.com/@bounouh.fedi/understanding-iops-in-aws-w...
I/O is hard to benchmark so it's often ignored since you can just scale up your disks. It's a common gotcha in the cloud. It's not a show stopper, but it blows up the savings you might be expecting.