Cloud computing

From Citizendium
Revision as of 03:00, 13 September 2009 by imported>Howard C. Berkowitz
Jump to navigation Jump to search
This article is developed but not approved.
Main Article
Discussion
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
 
This editable, developed Main Article is subject to a disclaimer.

Cloud computing refers to accessing computing resources that are typically owned and operated by a third-party provider on a consolidated basis in data center locations. It is aimed at delivering cost-effective computing power over the Internet, including virtual private networks (VPN) or even virtual private line networks (i.e., Layer 2 VPN) mapped onto facility providers. Consumers of cloud computing services purchase computing capacity on-demand and are not generally concerned with the underlying technologies used to achieve the increase in server capability.

It is, by no means, a new concept in computing. Bruce Schneier reminds us of that it has distinct similarities in the processing model, although not the communications model, with the timesharing services of the 1960s, made obsolete by personal computers. " Any IT outsourcing -- network infrastructure, security monitoring, remote hosting -- is a form of cloud computing."

The old timesharing model arose because computers were expensive and hard to maintain. Modern computers and networks are drastically cheaper, but they're still hard to maintain. As networks have become faster, it is again easier to have someone else do the hard work. Computing has become more of a utility; users are more concerned with results than technical details, so the tech fades into the background.[1]

=Trust and Security

But what about security? Isn't it more dangerous to have your email on Hotmail's servers, your spreadsheets on Google's, your personal conversations on Facebook's, and your company's sales prospects on salesforce.com's?

You don't want your critical data to be on some cloud computer that abruptly disappears because its owner goes bankrupt . You don't want the company you're using to be sold to your direct competitor. You don't want the company to cut corners, without warning, because times are tight. Or raise its prices and then refuse to let you have your data back. These things can happen with software vendors, but the results aren't as drastic.

This essay originally appeared in The Guardian.

I have always said mainframes are like cats. They may deign to give you a small amount of their time, but its on their terms and you have to be satisfied with it. Whereas PCs are like dogs. Their entire attention is focused on you and you call the shots. SaaS is similar to the "network is king" mentality in that it is converting PCs back into cats - you no longer have the ability (or authority) to customize your desktop exactly the way you want, you have to use the application(s) that the IT dept provides, rather than one(s) that meet(s) your requirements, they keep adding more bulk of overhead software and when THEY fail it's YOUR problem not theirs.

There is no single industry-accepted definition.[2] Some services broker extra capacity available on enterprise servers, as well as resources in pools of managed virtual servers. Others sell capacity on virtual servers. Yet others include any external computing resource, even to outsourced backup services, within the definition.

The applications of cloud/utility computing models are expanding rapidly as connectivity costs fall, and as computing hardware becomes more efficient at operating at scale. The economic incentives to share hardware among multiple users are increasing; the drawbacks in performance and interactive response that used to discourage remote and distributed computing solutions are being greatly reduced. As a result, the services that can be delivered from the cloud have expanded past web applications to include storage, raw computing, or access to any number of specialized services.

How cloud computing works

There are two different types of cloud computing customers. The first only pays a nominal fee for these services -- and uses them for free in exchange for ads: e.g., Gmail and Facebook. These customers have no leverage with their outsourcers. You can lose everything. Companies like Google and Amazon won't spend a lot of time caring. The second type of customer pays considerably for these services: to Salesforce.com, MessageLabs, managed network companies, and so on. These customers have more leverage, providing they write their service contracts correctly. Still, nothing is guaranteed.

The second type runs their applications on networked large groups of servers that often use low-cost PC technology, with specialized connections to spread data-processing chores across them. The architecture behind cloud computing is a massive network of "cloud servers" interconnected as if in a grid running in parallel, sometimes using the technique of virtualization to maximize the utilization of the computing power available per server. For reasons of commercial reliability, however, the resources will rarely be consumer-grade PCs, either from a machine resource or form factor viewpoint. Disks, for example, are apt to use RAID technology for fault protection. Blade server, or at least rack mounted server chassis will be used to decrease the data center floor space, and often cooling and power distribution, complexity. These details are hidden from the application user.

Some cloud computing applications do try to replicate compute-intensive supercomputer applications using highly distributed parallel processsing. [3]

Advantages

  • Location of infrastructure in areas with lower costs of real estate and electricity.
  • Sharing of peak-load capacity among a large pool of users, improving overall utilization.
  • Separation of infrastructure maintenance duties from domain-specific application development.
  • Separation of application code from physical resources.
  • Ability to use external assets to handle peak loads (not having to engineer for highest possible load levels).
  • Not having to purchase assets for one-time or infrequent intensive computing tasks.
  • Ability to scale to meet changing user demands quickly, usually within minutes

Challenges facing cloud computing

The technical standards for connecting the various computer systems and pieces of software needed to make cloud computing work still aren't completely defined. That could slow progress on new products. Without high-speed connections—especially wireless ones—cloud computing services won't be widely accessible. And storing large amounts of data about users' identity and preferences is likely to raise new concerns about privacy protection.

Cloud storage

Cloud storage is a model of networked data storage where data is stored on multiple virtual servers, generally hosted by third parties, rather than being hosted on dedicated servers. Hosting companies operate large data centers; and people who require their data to be hosted buy or lease storage capacity from them and use it for their storage needs. The data center operators, in the background, virtualize the resources according to the requirements of the customer and expose them as virtual servers, which the customers can themselves manage. Physically, the resource may span across multiple servers.

References

  1. "Cloud Computing", Schneier on Security, June 4, 2009
  2. What cloud computing really means. Retrieved on 2008-07-22.
  3. Computing Heads for Clouds. Retrieved on 2008-07-22.