Thursday, May 1, 2014

What is cloud computing?  By wiki definition, Cloud computing is computing that involves a large number of computers connected through a communication network such as the Internet. This technology launches the application over the internet and users do not have control over the data storage or the hardware used by the application. The same way 90s big mainframe machines gave way to desktops and then laptops with home internet, the age of data storage in big size servers giving way towards more and more on clouds. What does this change mean to me?  The best example is my computer/data can be accessed anywhere using just a web browser, using one drive https://onedrive.live.com/ for the files in my laptop. We are using cloud at various levels, hardware, storage, data maintenance and so on.

Virtualization has led to cloud computing in many ways. Virtualization is the separation of the OS from the underlying hardware. In the olden days way back in 08 or 09 we would install the Operating system in a computer based on whether it is HP, Dell. The Operating System has been tied to the device drivers for a long time.  Virtualization is the process in which a layer called hypervisor is installed and the applications are installed over it.

                 
              

Why should a business look into Virtualization? Most applications require their own physical hardware to remain separated from other applications on the network, which can become very cost prohibitive. Secondly, most applications are not utilizing the full power of today’s server hardware, so why not find a better way to fully utilize the servers on your network? With Virtualization, it is now possible to create several “virtual” servers on a single physical server, each running independently of the others. This allows you to keep applications from conflicting with each other and better utilize the resources available on the server, all while maintaining a cost effective approach to new server purchases.

Virtualization is the key to cloud computing in unlocking the potential for better software manipulation. Virtualization of computer hardware has led to the delivery of various computing resources over the network as a service. The major IT companies can save by maximizing resources in multiple systems. They can install various software with different OS requirements in a single server. This reduces the need to buy many servers. This saves a lot of money for small businesses which can be invested back in to business development.

One most important advantage of improves in cloud services nowadays is really the presence of virtual offices for many of us. We nowadays see a lot of projects working all over the globe. The globalization is due to the presence of virtual servers and having all files online.
The product that had its origin in early days of cloud and has grown ever since is the dumb terminals. The best example of dumb terminal is Chromebook. Chromebook is the laptop in which the local storage is kept minimal. The user should do everything from a browser and store it in the cloud. You would have guessed by now why it is called dumb terminals all over the internet. The biggest disadvantage comes when the system is without an internet connection. The user does not have control over the data which leads to security issues. Anyone can hack in to the virtual machine and hack the personal data more easily. The security issues are in the news few times a month nowadays, the internet explorer malware, AOL password hack to name a few in news end of April 2014. But in the past few years the technology has shaped our thought process so that we are over the fact of security since the sales of chromebook seem to be increasing and so are cloud services in our daily life.

                                                      

                                               

The cloud computing services can be divided in to three main areas, SaaS (Software as a Service), PaaS (Platform as a Service), and IaaS (Infrastructure as a Service). SaaS provider gives access to software over the internet, and maintains the data center in most cases. Salesforce.com, Intuit QuickBooks, Citrix Goto meeting are example of SaaS CRM application. The users can access the application through a web browser. Due to Saas advancements the companies can use the IT staff for various new innovation rather than maintenance of existing projects. Also the support for the software is provided without a increasing the workload on local helpdesk.  PaaS (Platform as a Service) is the delivery of development platform hosted in the cloud without the need for installation of software in the local machine. It is similar to Saas, but instead of delivering the software over the cloud, we have development environment over cloud.  This enables application development to be faster without the need to buy the hardware and software licenses.  The users do not have to worry about upgrades and can increase the effectiveness and interactivity of a large staff. IBM Bluemix.net, Microsoft Azure are some services which offer the platform over the web. IaaS (Infrastructure as a Service) is a model to deliver Infrastructure, storage, network and servers over the internet to the user. The user can rent the server in third party infrastructure in exchange for a rental fee. Compared to SaaS and PaaS, IaaS users are responsible for managing more: applications, data, runtime, middleware, and O/S. Vendors still manage virtualization, servers, hard drives, storage, and networking. When the business is new without much capital to invest in infrastructure, or when the IT company wants to limit the budget, when someone wants to try a new software, they can easily try their application in the cloud.   

The network crashes can cost a lot more nowadays than in the past. The same goes without saying for hacking and other concerns. The days and our life were different when we were children and used to play outside due to power failure in our whole street. I still remember screaming and playing in the dark in India. The lives of our kids are different, they have a meltdown and do not know what to do when the internet is down and so is Facebook server. We all remember the crash of amazon servers that lead to Netflix, Pinterest crashes in 2012. http://www.pcmag.com/article2/0,2817,2406577,00.asp.

Cloud computing is a concept that is driven by virtualization and improved the quality of our online lives by letting us manage less amount of servers and data, but giving the privilege of using the various software products. We have discussed the advantages and disadvantages of cloud computing intertwined in this article rather than having subheadings. I also have some examples of various software solutions that would help us better understand the topic.

References:
Images are from http://commons.wikimedia.org/ and labelled as “Non Commercial reuse”