Cloud Computing (Marketing Term)


Utility computing - we want to share computing capability, like power , water - most cost efficient


For a computation, we want to work in low power mode - we want to quickly shut down when the system is not in use, but power up quickly when we need it with a low power cost. For powering on, we want to stay away from rotating disk for cost efficiency, so we instead use flash drive to cache to reboot / power on.



Effect on OS design


Let's say there are a lot of VMs, which ease configuration, and client(typically multicore VM running Java VM or javascript apps) access to just a few of the servers in the cloud, which are called edge servers.


Is there a opportunity for a Cloud O.S? big O.S is messy.




Marketing at cloud computing


Short term commitment

As-needed payment

Can grow capabilities as needed 'instantly'. For example, when there is unknown demand for a startup for example there is Super bowl, they can always increase the server.



Administrative nightmare about cloud computing!


  • Let's say there is one server in USC, and one server in harvard, how can I do a computation with both cluster or more.

  • Cloud manager deals with all the cluster.


Issues




More Issues




Data confidentiality


UCLA hospital has a lot of patient records. The database has a low level pixels containing patient's face, and primary relevant stuff.

Will this work? No, there is face recognition, so if we hack into the server and do face recognition, we will be able to detect who's patient record this is.


So we encrypt the data in the cloud (clouds see only encrypted data), then computations on your machine - then this loses benefit of cloud computing.



Data transfer bottleneck


node at UCLA ------> 1GB of data -----> node at USC

Big problem, Sneakernet is sometimes faster.



More Issues


Suppose your cloud server provider is busy.

access overload is usually the biggest problem




Debugging cloud application





Debugging cloud application





CAP theorem





Practical consequences of CAP


partition can get full

tiny partitions are more common




A common decisions when things seem slow (reg, no response)





We want setup where during a partition, can't cause trouble.

One way is, during a partition, do only commutative operations

P1: A, B, C

P2: M, N, P, Q

===> A, M, N, B, P, C, Q