4 ms·
Very interesting points. 'Google has shown that, with the right distributed software, a cluster of cheap machines can be more reliable because you avoid puttin
by capkutay 13y ago
Very interesting points.
'Google has shown that, with the right distributed software, a cluster of cheap machines can be more reliable because you avoid putting all your eggs in the mainframe basket.'
'Moreover, just as Google's clusters beat Altavista's mainframe approach, a clustered database should scale to much bigger workloads than the biggest mainframe.'
My one comment on those points is that distributed computing solved Google's problem, and of course applies to what many software companies are trying to do (amazon, yahoo, etc.) But do they have an answer for the set of problems where 100% ACID compliance and high-availability is a requirement?
- haimez 13y agoACID compliance is not ever a strict requirement, it's an abstraction guarantee. If you have a fully ACID compliant database with a sufficiently expressive query interface, then the complexity of the datastore is a perfect abstraction. The ATM machines people use every day to exchange money are not fully ACID compliant, and they do not use "transactions". It's a calculated choice on the design of the system to account for the guarantees in different ways and balance discrepancies that occur after the fact. If you need full ACID compliance and need to operate at "Google scale", you reorganize the problem so that you don't need the compliance.
- justinsb 13y agoI believe NewSQL will deliver 100% ACID and high-availability on distributed systems. Not 100% availability, because CAP tells us that's theoretically impossible. But availability as good as any _real-world_ non-consistent database _implementation_. The CAP conjecture has certainly been a major barrier to progress in this area ;-)