3 ms·
Banks are forced to be eventually consistent because of their distributed nature. If it was practical to have a big central ACID database I'm sure that's what t
by kpmah 10y ago
Banks are forced to be eventually consistent because of their distributed nature. If it was practical to have a big central ACID database I'm sure that's what they'd use. There is an extra layer of complexity with distributed systems.
That said, if the problem has been thought about, I'm happy. My frustration is with people not understanding the trade-offs.
- deleted 10y ago[deleted]
- vidarh 10y agoThe problem is that a big central ACID database enforces strict limits on throughput limited at best by the the speed of light (in reality it's worse). Enforcing a globally consistent views basically requires coordination. Coordination requires that a signal traverses a distance and is acted on no faster than the instruction throughput of a single CPU core. When the sources of operations are geographically spread out, you will be limited based on the fastest communication possible between those locations in addition to the processing latency. Ultimately this means that there are scaling limits to throughput of a fully serialised system that causes real problems all the time. Sometimes a single global truth is still fast enough. Very often it isn't, when e.g. your users are spread out globally. That's why it's important to consider avoiding consistency when it is not necessary.