What is on-demand computing?
On-demand computing (ODC) is a delivery model in which computing resources are made available to the user as needed. The resources may be maintained within the user's enterprise or made available by a cloud service provider. The term cloud computing is often used as a synonym for on-demand computing when the services are provided by a third party -- such as a cloud hosting organization.
The on-demand business computing model was developed to overcome the challenge of enterprises meeting fluctuating demands efficiently. Because an enterprise's demand for computing resources can be unpredictable at times, maintaining sufficient resources to meet peak requirements can be costly. And cutting costs by only maintaining minimal resources means there are likely insufficient resources to meet peak loads. The on-demand model provides an enterprise with the ability to scale computing resources up or down whenever needed, with the click of a button.
The model is characterized by three attributes: scalability, pay-per-use and self-service. Whether the resource is an application program that helps team members collaborate or provides additional storage, the computing resources are elastic, metered and easy to obtain.
When an organization pairs with a third party to provide on-demand computing, it either subscribes to the service or uses a pay-per-use model. The third party then provides computing resources whenever needed, including when the organization is working on temporary projects, has expected or unexpected workloads or has long-term computing requirements. For example, a retail organization could use on-demand computing to scale up their online services, providing additional computing resources during a high-volume time, such as Black Friday.
On-demand computing normally provides computing resources such as storage capacity, or hardware and software applications. The service itself is provided with methods including virtualization, computer clusters and distributed computing.
How does cloud computing provide on-demand functionality?
Cloud computing is a general term for anything that involves delivering hosted services over the internet. These services are divided into different types of cloud computing resources and applications.
For example, on-demand computing often involves cloud computing methods, such as infrastructure as a service (IaaS), software as a service (SaaS), desktop as a service (DaaS), platform as a service (PaaS), managed hosting services, as well as cloud storage and backup services. These methods offer the following:
- IaaS provides virtualized computing resources over the internet.
- SaaS is a software distribution model where a cloud provider hosts applications and makes them available to users over the internet.
- DaaS is a form of cloud computing where a third party hosts the back end of a virtual desktop infrastructure
- PaaS is a model in which a third-party provider hosts customer applications on their infrastructure. Hardware and software tools are delivered to users over the internet.
- Managed hosting services are an IT provisioning and cloud server hosting model where a service provider leases dedicated servers and associated hardware to a single customer and manages those systems on the customer's behalf.
- Cloud storage is a service model where data is transmitted and stored securely on remote storage systems, where it is maintained, managed, backed up and made available to users over a network.
- Cloud backup is a strategy for sending a copy of a file or database to a secondary location for preservation in case of equipment failure.
These cloud-based services are typically made on-demand and in real time for users. Computing resources are delivered using a shared pool of servers, storage devices, networks and applications.
Cloud hosting providers may provide an enterprise-level control panel where they can quickly view and scale up or down their cloud services. An organization could use this to scale their storage space, speed, software applications, servers or networks.
Benefits of on-demand computing
On-demand computing offers the following benefits:
- Flexibility to meet fluctuating demands. Users can quickly increase or decrease their computing resources as needed -- either short-term or long-term.
- Removes the need to purchase, maintain and upgrade hardware. The cloud service organization managing the on-demand services handles resources such as servers and hardware, system updates and maintenance.
- User friendly. Many on-demand computing services in the cloud are user friendly enabling most users to easily acquire additional computing resources without any help from their IT department. This can help to improve business agility.
- Cut costs. Saves money because organizations don't have to purchase hardware or software to meet peaks in demand. Organizations also don't have to worry about updating or maintaining those resources.
But organizations must also be concerned about the unauthorized use of added resources via on-demand computing, as shadow IT can pose security risks. For this reason, many IT departments perform periodic cloud audits to identify unauthorized use of on-demand applications and other rogue IT.
The future of on-demand computing
According to a report from Gartner, cloud-based platform services may increase to $109.6 billion in corporate spending in 2022 -- which is up from $86.9 billion in 2021. Likewise, Gartner predicts a 26% increase in spending on cloud-based platform services. Spending on IaaS is also forecasted by Gartner to show one of the highest growth rates at 31% in 2022 compared to other cloud categories.
Large vendors such as Amazon Web Services, HPE, IBM and Microsoft offer on-demand computing products. Microsoft, for example, provides Azure SaaS and AWS offers pay-as-you go pricing with its IaaS offerings. As more of these services become available, there is a greater chance that enterprises will look to on-demand computing as a way to facilitate the challenges of fluctuating computing resource needs.
Learn more about the characteristics of cloud computing, including on-demand computing and self-service provisioning.