Scalability And Elasticity In Cloud Computing

Over time as the business grows so will the database and the resource demands of the database application. If the IT manager knows based on the growth rate of the business and/or the database he may purchase provisioned infrastructure so that the database application has the room to grow to its maximum performance and capacity expected. In other words, scale up performance without having to worry about not meeting SLAs in a steady pay-as-you-grow solution. Common use cases where cloud elasticity works well difference between scalability and elasticity include e-commerce and retail, SaaS, mobile, DevOps, and other environments that have ever changing demands on infrastructure services. Businesses that have a predictable workload where capacity planning and performance are stable and have the ability to predict the constant workload or a growth cloud scalability may be the better cost saving choice. Hybrid Cloud is a computing environment that combines a public cloud and a private cloud by allowing data and applications to be shared between them.

  • With the adoption of cloud computing, scalability has become much more available and more effective.
  • Trending sort is based off of the default sorting method — by highest score — but it boosts votes that have happened recently, helping to surface more up-to-date answers.
  • System scalability is the system’s infrastructure to scale for handling growing workload requirements while retaining a consistent performance adequately.
  • The increase / decrease happens on the fly without physical service interruption.

In the SaaS model, the customer does not have the ability to manage the underlying infrastructure or configure the application. Examples of this is Office 365, OneDrive, Salesforce, Oracle etc. Scalability is the property of a system to handle a growing amount of work by adding resources to the system. In Azure, compute resources like Virtual Machine Scale Sets, support automatic scaling, which means that, if the load on a single machine is above a certain threshold, the Azure platform will add more resources to the Scale Set.

Scalability Vs Elasticity

In this case, cloud scalability is used to keep the system’s resources as consistent and efficient as possible over an extended time and growth. Сloud elasticity is a system’s ability to manage available resources according to the current workload requirements dynamically. Consumption-based model is a service provision and payment scheme in which the customer pays according to the resources used. This model is essentially the same as the utility computing payment structure and those of other utilities, such as water and electricity. In this model, the provider may charge a flat rate for all resources per time used or may charge at different rates for various components of the service.

Scaling out is when we add additional instances that can handle the workload. These could be VMs, or perhaps additional container pods that get deployed. The idea being that the user accessing the website, comes in via a load balancer which chooses the web server they connect to.

scalability and elasticity agility

In the grand scheme of things, cloud elasticity and cloud scalability are two parts of the whole. Both of them are related to handling the system’s workload and resources. Cloud scalability is used to handle the growing workload where good performance is also needed to work efficiently with software or applications. Scalability is commonly used where the persistent deployment of resources is required to handle the workload statically. Software-as-a-Service is a software distribution model in which a third-party provider hosts applications and makes them available to customers over the Internet.

In most cases, this is handled by adding resources to existing instances—called scaling up or vertical scaling—and/or adding more copies of existing instances—called scaling out or horizontal scaling. In addition, scalability can be more granular and targeted in nature than elasticity when it comes to sizing. Horizontal scaling works a little differently and, generally speaking, provides a more reliable way to add resources to our application.


OpEx is spending money on services or products now and being billed for them now. Scalability is meeting predictable traffic demand while elasticity is meeting sudden traffic demand. As another example, you can configure your system to increase the total disk space of your backend cluster by an order of 2 if more than 80% of the total storage currently available to it is used. If for whatever reason, at a later point, data is deleted from the storage and, say, the total used storage goes below 20%, you can decrease the total available disk space to its original value. Scalability refers to the ability for your resources to increase or decrease in size or quantity. While both elasticity and agility refer to being able to allocate and deallocate resources as needed, there is a slight difference.

It refers to the system environment’s ability to use as many resources as required. Various seasonal events and other engagement triggers (like when HBO’s Chernobyl spiked an interest in nuclear-related products) cause spikes in customer activity. These volatile ebbs and flows of workload require flexible resource management to handle the operation consistently. In this kind of scaling, the resources are added in a horizontal row. High Availability is the ability of the system to be up and running with very little downtime. A fault-tolerant cloud system will be able to manage to quickly shift to another copy of the server in the data center whenever any failure is identified.

Describe the benefits and considerations of using cloud services High Availability is a characteristic of a system, which aims to ensure an agreed level of operational performance, usually uptime, for a higher than normal period. This agreed level of operational performance or uptime on Azure is governed by SLAs. As an example, the SLA for a Single Instance Virtual Machines with Premium Storage is 99.9%. Technical IT experience is not required however some general IT knowledge or experience would be beneficial.

scalability and elasticity agility

Elasticity is automatic and reactive to external stimuli and conditions. Elasticity is automatic scalability in response to external conditions and situations. Elasticity is the ability of a system to increase its compute, storage, netowrking, etc. capacity based on specified criteria such as the total load on the system. It is a mixture of both Horizontal and Vertical scalability where the resources are added both vertically and horizontally. For example, your application hosted on an App Service, VM or any other compute service, should remain up and running even if underlying server hardware fails.

Understanding these differences is very important to ensuring the needs of the business are properly met. Elasticity is related to short-term requirements of a service or an application and its variation but scalability supports long-term needs. Again, scalability is a characteristic of a software architecture related to serving higher amount if workload, where elasticity is a characteristic of the physical layer below, entirely related to hardware budget optimizations. So when the question states the company needs to react, this seems like a manual process.

Cloud Computing Concepts

Thanks to the pay-per-use pricing model of modern cloud platforms, cloud elasticity is a cost-effective solution for businesses with a dynamic workload like streaming services or e-commerce marketplaces. They may be free or sold on-demand, allowing customers to pay only per usage for the CPU cycles, storage, or bandwidth they consume. Cloud environments can usually provide new compute instances or storage in minutes, a far cry from the very common weeks the same provisioning process can take in typical IT shops. As one could imagine, the dramatic shortening of the provisioning timeframe enables work to commence much more quickly. No more submitting a request for computing resources and then anxiously watching e-mail for a fulfillment response. As agility may be defined as “the power of moving quickly and easily; nimbleness” it’s easy to see how this rapid provisioning is referred to advancing agility.

In Azure, using the same example of Virtual Machine Scale Sets, when the load on a single Virtual Machine is above the threshold, we can dynamically provision more resources to match this demand. When the load decreases below the threshold, the amount of resouces are removed to match the demand. Elasticity in cloud ensures that we are not running more resources than we need at any given time. Advanced chatbots with Natural language processing that leverage model training and optimization, which demand increasing capacity. The system starts on a particular scale, and its resources and needs require room for gradual improvement as it is being used.

Unlike elasticity, which is more of makeshift resource allocation – cloud scalability is a part of infrastructure design. System scalability is the system’s infrastructure to scale for handling growing workload requirements while retaining a consistent performance adequately. It is totally different from what you have read above in Cloud Elasticity. Scalability is used to fulfill the static needs while elasticity is used to fulfill the dynamic need of the organization. Scalability is a similar kind of service provided by the cloud where the customers have to pay-per-use. So, in conclusion, we can say that Scalability is useful where the workload remains high and increases statically.

scalability and elasticity agility

In resume, Scalability gives you the ability to increase or decrease your resources, and elasticity lets those operations happen automatically according to configured rules. Something can have limited scalability and be elastic but generally speaking elastic means taking advantage of scalability and dynamically adding removing resources. Scalability is the ability of the system to accommodate larger loads just by adding resources either making hardware stronger or adding additional nodes . The big difference between static scaling and elastic scaling, is that with static scaling, we are provisioning resources to account for the “peak” even though the underlying workload is constantly changing.

A PaaS provider hosts the hardware and software on its own infrastructure. As a result, PaaS frees users from having to install in-house hardware and software to develop or run a new application. In the PaaS model, the customer does not need to worry about maintaining the underlying server infrastructure; this is maintained by the cloud provider. The customer is responsible for the application that runs on the PaaS service. Executed properly, capitalizing on elasticity can result in savings in infrastructure costs overall. Environments that do not experience sudden or cyclical changes in demand may not benefit from the cost savings elastic services offer.

Elasticity and scalability features operate resources in a way that keeps the system’s performance smooth, both for operators and customers. Scalability is an essential factor for a business whose demand for more resources is increasing slowly and predictably. Compute Power & Storage are the two most basic services provided by all cloud providers. Per Gartner, the worldwide market forecast for public cloud is estimated at $129 billion with a five-year compound annual growth rate of 17%.

The database expands, and the operating inventory becomes much more intricate. End-users appreciate the Cloud’s agility, scalability, elasticity and predictable IT costs. Cloud computing affords VARs and service providers the ability to offer scalable solutions at lower operating costs with fewer assets, provide reoccurring revenue and predictable profitability. Elasticity is the ability to fit the resources needed to cope with loads dynamically usually in relation to scale out. So that when the load increases you scale by adding more resources and when demand wanes you shrink back and remove unneeded resources. Elasticity is mostly important in Cloud environments where you pay-per-use and don’t want to pay for resources you do not currently need on the one hand, and want to meet rising demand when needed on the other hand.

Both, Scalability and Elasticity refer to the ability of a system to grow and shrink in capacity and resources and to this extent are effectively one and the same. The difference is usually in needs and conditions under which this happens. Scalability is mostly manual, predictive and planned for expected conditions.

Consistent Performance

Some cloud services are considered adaptable solutions where both scalability and elasticity are offered. They allow IT departments to expand or contract their resources and services based on their needs while also offer pay-as-you-grow to scale for performance and resource needs to meet SLAs. Incorporation of both of these capabilities is an important consideration for IT managers whose infrastructures are constantly changing. Do not fall into the sales confusion of services where cloud elasticity and scalability are presented as the same service by public cloud providers. Scalability includes the ability to increase workload size within existing infrastructure (hardware, software, etc.) without impacting performance.

Elasticity is used to describe how well your architecture can adapt to workload in real time. For example, if you had one user logon every hour to your site, then you’d really only need one server to handle this. However, if all of a sudden, 50,000 users all logged on at once, can your architecture quickly provision new web servers on the fly to handle this load?

Where Elasticity And Scalability Cross Paths

Organizations gain the flexibility and computing power of the public cloud for basic and non-sensitive computing tasks, while keeping business-critical applications and data on-premises, safely behind a company firewall. Cloud environments (AWS, Azure, Google Cloud, etc.) offer elasticity and some of their core services are also scalable out of the box. Furthermore, if you build a scalable software, you can deploy it to these cloud environments and benefit from the elastic infrastructure they provide you to automatically increase/decrease the compute resources available to you on-demand.

What Is The Difference Between Scalability And Elasticity?

The notification triggers many users to get on the service and watch or upload the episodes. Resource-wise, it is an activity spike that requires swift resource allocation. Thanks to elasticity, Netflix can spin up multiple clusters dynamically to address different kinds of workloads. Where IT managers are willing to pay only for the duration to which they consumed the resources. This could mean vertical scaling , as well as horizontal scaling .

They have to deal with existing legacies and be ambidextrous – both build on their existing systems, while stretching out and exploring new innovative ideas and technologies at the same time. Managing to balance this stretch is the real challenge in digital transformation. Agility is the ability to scale up or down quickly to meet demands. Modern business operations live on consistent performance and instant service availability.


This is jumping from one task to the next, change requirements, being able to change scope and adapt to an ever moving target. Looking to gain a better understanding of how Turbonomic works in a sandbox environment? Check out our self-service demo that you can explore at your own pace. Below are major cloud concepts in Azure or any other cloud platform.

0 پاسخ

دیدگاه خود را ثبت کنید

تمایل دارید در گفتگوها شرکت کنید؟
در گفتگو ها شرکت کنید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *