Cloud Computing SaaS, PaaS and IaaS Services
Since Sympatico Inc., just about every software development project that I have been involved in has been built in a cloud environment utilizing a combination of SaaS, PaaS and IaaS Services.
Industry leading at the time, but I expect that by 2015, IDC, Gartner, Forrester or some such market research company will reveal that by some metric–number of users, sales volume, whatever–software as a service will surpassed on-premises licensed software.
I’ll grant you that a good portion of the SaaS success in 2015 will come in the form of the hybrid model, software + services. And a good portion of that will come from applications that tie iPhones, Blackberries, Pres and other smartphones to your PC. But the unambiguous meaning and trend is the same.
Software is moving to the cloud because most of it belongs there.
If you ask an IT professional Software is touchy. It’s precise. It’s sensitive to changes in its environment. It needs the TLC only experts can provide. Most people don’t qualify and are happy to hand over administration and management of software to IT professionals.
However most business leaders would be happy to give up the headaches of keeping track of software compatibility, malware updates, application patches, license management and everything else that goes with owning software. And when they hear about SaaS for the first time, I bet their eyes light up. And when they learn that those who are already using SaaS are extremely happy with their decision, up to 97% in one survey, the deal is all but done.
Add to the logic and satisfaction of SaaS will be the options people will have, especially by 2015. Today, ISVs are being advised to embrace the SaaS model in tough economic times. Indeed, ISVs are actively working on SaaS versions of their on-premises software.
What is cloud computing , SaaS, PaaS and IaaS services ?
Cloud computing is the next big step on the path to a more efficient use of computing resources. It is going to be a disruptive technology that will totally change the way enterprises look to meet their IT hardware and software requirements. In this article we shall make an attempt to simplify the concept of cloud computing.
Cloud computing is a style of computing that uses the Internet to deliver various IT-related services to multiple end users, which includes
- Infrastructure as a Service (IaaS): A service delivery model, which enables an organization to outsource the equipment used to support its operations. These include storage, hardware, servers and networking components etc.
- Platform as a Service (PaaS): This service delivery model offers computing platforms and solution stack (a set of software subsystems) as a service, without the need of buying or managing the underlying hardware and software layer.
- Software as a Service (SaaS): Users can use this service delivery model to access software such as operating systems and other applications without necessarily downloading or installing them on their systems.
All of these services are available instantly on demand and is billed according to usage or subscription. Additionally cloud computing gives enterprises the opportunity to consolidate their IT operations and adopt virtualization technologies. As a result it leads to lower capital expenditure, better utilization of resources, instant access to the latest technology at all times, greater innovation, speedy deployment cycles and lower administrative costs.
How does cloud computing work?
Currently cloud computing involves the usage of a large number of computer servers and other resources as a group. Common business applications are made available online through data centers, which can be accessed from a web browser. The software and data are stored on servers with different levels of virtualization technologies. Cloud computing also provides a mechanism to manage these resources by provisioning or de-provisioning virtual or physical machines, re-imaging, workload re-balancing, and monitoring usage to identify and correct network issues, performance problems, and capacity concerns.
The combined capacity of the cloud is offered to the end-user on an on-demand, pay-per-cycle basis over the Internet. The users of a cloud computing network can access the cloud from anywhere and do not even need to know where the servers are physically located. Service providers usually offer service level agreements that ensure quality.
What are the types of Clouds?
Within cloud computing itself, vendors focus on specific areas and offer various types of services. So when an organization selects a cloud computing type and a service provider, it also means that a specific architecture is finalized. This impacts how it can be used, the standards supported, the service agreements entered into, the flexibility, scalability, and security, and almost all aspects, including the final performance. Clouds are typically identifiable as:
- Public or External clouds: In this type of cloud a service provider offers, maintains and bills for this service. Public or External clouds often offer inexpensive and even free services over the Internet.
- Hybrid clouds: With multiple internal and/or external providers having a great degree of interoperability, most enterprises prefer a mix of in-house and external IT resources. Most of the major vendors design their platforms to suit the hybrid model, as it offers more flexibility to suit dynamic data requirements. The offline version of Gmail is a type of hybrid cloud computing.
- Private clouds: These clouds allow cloud computing on internal networks, for enterprises that seek to achieve the benefits of cloud computing internally, without the risks attached to external clouds. Even in a private cloud, normally, computing capacity from both internal and external clouds can be made available. A private cloud allows the enterprise setting it up to host and maintain a secure computing environment for its staff and its customers. It allows all applications such as legacy, server-based, desktop or those built on new application frameworks, to be delivered as a service.
In addition to the general benefits of cloud computing, a private cloud allows the enterprise to gain better control over the entire process of information processing resulting in reduction of costs, greater flexibility, reduction in wastage due to monitored consumption, standardized, better quality of service, agility in response, greater security due to better encryption and provision for both existing and future applications without re-writes or modifications.
The drawback is that private clouds are expensive for small and medium enterprises for they do not confer economies of scale; capital costs and management costs involved in building or buying, and subsequently maintaining, a private cloud are also much higher.
What are types of emerging cloud computing services?
- Compute Clouds: They allow access to highly scalable, inexpensive, on-demand computing resources that run the code they are provided. Compute clouds can be used for a variety of general purposes.
- Cloud Storage: Storage was one of the first major services to appear in the cloud and remains one of the most popular and well-addressed segments in the cloud computing realm.
- Cloud Applications: Cloud applications are a form of Software-as-a-Service (SaaS) and range from Web apps that are delivered to users entirely via a browser to hybrids like Microsoft Online Services, which has hosting and IT management in the cloud, and consists of both native and Web clients with application infrastructure hosted elsewhere.
What are the benefits of cloud computing?
Reduction in costs: The cloud obviates the need for each user to invest in stand-alone servers or software that traditionally demand heavy capital investment, but are under-utilized most of the time. Also over time, technological innovations take place, and these resources become obsolete. As a result these resources must be replaced with the latest ones if the enterprise has to operate efficiently — this calls for yet more capital investment. The cloud eliminates the need for such ‘replacement’ capital expenditure.
As many end-users share a cloud, this distributes cost and enables economies of scale in terms of centralization of resources including real estate, bandwidth, and power. Over a period of time, the costs of using cloud computing are bound to come down as more and more users sign up. The enterprise also saves on overheads such as management costs, data storage costs, costs of software updates, quality control etc., and at the same time gains access to necessary services at economical rates.
Scalability and speed: Enterprises can cut down the time involved in buying and setting up the hardware, software and other resources necessary to support a new application. They can quickly respond to scale up or scale down their usage of services on the cloud as per market demands, during peak hours of activity, while running sales campaigns, etc. Since many service providers have data centers in multiple locations to keep the processing near those accessing it over the Internet, the performance of the cloud is normally good.
Enabling Innovation: Cloud computing enables enterprises to focus on innovation as they no longer have to own or manage their IT resources. Cloud computing helps in faster development of prototypes and is very useful in testing and validation services, especially for research and development projects, or where collaboration between two or more users is required.
Ease of Use: Entry to a cloud is easy and shared infrastructure and costs ensure low overheads and immediate availability of all requisite applications. Consumption of resources is as a service with payments made on the basis of actual consumption only. The services are delivered and billable just like in any other utility for, say, electricity or water supply. Details of billing are made available by the service provider; this helps control costs.
The enterprise does not need specially trained manpower or any equipment other than an Internet-connected device to use cloud computing services. Even infrequent tasks can be performed on the cloud. High-speed bandwidth ensures speed of and parity in, the response time from infrastructure located at different sites.
Freedom of location: Service providers can set up infrastructure in areas with lower overheads and pass on the benefit to the end-user. They can set up multiple redundant sites, to facilitate business continuity and disaster recovery. This helps the enterprise cut costs further as these contingencies do not have to be taken care of separately.
Better utilization of limited resources: Utilization of all server, storage and network resources is maximized as it is shared by multiple users, thus cutting down on waste at a global level. It is a more environment-friendly, energy efficient way to meet an enterprise’s IT needs. Down-time is cut and optimization of resources across enterprises on the cloud is achieved.
Flexibility: Users can end the contract as and when required and thus gain a high level of operational flexibility. The services are usually covered by service level agreements with financial penalties imposed on the service provider if the contracted quality is not provided.
How to minimize the risks of using cloud computing?
Enterprises may be hesitant to use cloud computing due to issues of trust – how can they be sure that their data can be accessed at all times, that it will not be lost or that it will not fall into the wrong hands? One way to address this is to examine the vendor’s policies closely and check the following seven security issues before signing-up for the service
- User access: Find out about all who have been granted access to data and about the hiring and management of such administrators
- Regulatory compliance: Find out whether the provider is willing to undergo external audits and/or security certifications and whether such certifications are already available for verification
- Data location: Ascertain if a provider gives the end-user control over the geographical location of data
- Data security: Make sure that a high quality of data encryption, is available at all stages
- Recovery: Find out about disaster management and data recovery safeguards; whether total restoration is guaranteed and, if so, the timeline for this
- Investigative Support: Ascertain whether any inappropriate or illegal activity can be identified and investigated by the service provider
- Long-term viability: Ask what will happen to data if the company goes out of business
What are the standards for cloud computing providers?
Many early cloud deployments are also based on open source infrastructure technologies, apart from proprietary technology provided by leading service providers. The Distributed Management Task Force (DMTF), an organization in the IT industry, has formed a group dedicated to addressing the need for open management standards for cloud computing. The “Open Cloud Standards Incubator” will work to develop a set of informational specifications for cloud resource management, addressing issues such as interoperability between private clouds within enterprises and hosted or public cloud providers, by developing cloud resource management protocols, packaging formats and security mechanisms to facilitate interoperability. Some participants are AMD, Cisco, Citrix, EMC, HP, IBM, Intel, Microsoft, Novell, Red Hat, and Sun Microsystems.
What does the future hold for cloud computing?
Is cloud computing the next big thing after the Internet? Initial estimates by experts in the field say that by 2012, eighty percent of Fortune 1000 enterprises will buy cloud computing services and thirty percent of them will buy cloud computing infrastructure. Additionally by 2010, more than eighty percent of enterprise usage of cloud computing will be for massive data queries, short-term large parallel workloads, or by startups with hardly any investment in IT infrastructure.
However cloud computing has to evolve significantly to deliver reliable, seamless service across private, hosted and public environments. The technology is still immature and must be validated over a longer period of time. Customization of applications on the cloud is difficult, especially with certain standard ones. The connection to the cloud works in the same manner as any Internet connection and unless an enterprise is willing to pay for a robust, dedicated connection, it will face the same glitches. The technology must be made simpler and more cost-effective to deploy and maintain. Data security is still a big issue.
Regardless of all this, if the benefits outweigh the disadvantages and if the technology and delivery models mature with time, cloud computing seems to be the way to go for most enterprises in the long run. There is the realization that cloud computing can help cut costs and drive innovation at the same time.