When managing large-scale distributed systems and services, what are the pros and cons with adopting a homogeneous vs. a heterogeneous design?
Homo (each node does every processing step):
- it’s simple, but cannot rely on caching
Hetero (Different nodes do different steps, data does not need to be accessible from every node):
- can take advantage of caching, but more complicate to engineer.
What did Animoto show about the benefits of cloud computing?
That is could enable companies that did not already have the infrastructure set up, that they could scale extremely quickly
Why is cloud computing successful?
law of large numbers (if you have enough customers, your average use is consistent)
economy of scale (cheap to buy hardware / software in bulk)
What are the different cloud service models?
Differentiated by which part of the stack (network->apps) that the cloud is providing.
What are the requirements for the cloud?