Scaling Out vs Scaling Up | Microsoft Azure (2024)

An intro to database scalability in cloud computing.

Data, data everywhere—what we talk about when we talk about scalability

Scalability incloud computingis the ability to quickly and easily increase or decrease the size or power of an IT solution or resource. While the term scalability can refer to the capability of any system to handle a growing amount of work, when we talk about whether to scale up vs. scale out, we are frequently referring to databases and data—and lots of it.

Database scalability is top of mind for modern app developers. Let's say a new app takes off—and demand for it grows from a handful of users to millions of users worldwide. One of the most important abilities to help the app developers keep pace with demand and minimize downtime is the ability to scale efficiently.

This conversation on scaling out vs. scaling up focuses on the ways scalability helps us to adapt and handle the sheer volume and vast array of data, changing data volumes, and shifting workload patterns—all generated from the cloud, mobile, social media, and big data.

Learn more about databases

Scaling Out vs Scaling Up | Microsoft Azure (1)

Scaling out vs. scaling up

At its most basic level, database scalability can be divided into two types:

Scaling Out vs Scaling Up | Microsoft Azure (2)

Vertical scaling, or scaling up or down, where you increase or decrease computing power or databases as needed—either by changing performance levels or by using elastic database pools to automatically adjust to your workload demands.

Scaling Out vs Scaling Up | Microsoft Azure (3)

Horizontal scaling, or scaling out or in, where you add more databases or divide your large database into smaller nodes, using a data partitioning approach called sharding, which can be managed faster and more easily across servers.

Learn more about database sharding

Scaling up vertically

Vertical scaling is used when you need to react quickly to fix a performance issue that you can't resolve using classic database optimization techniques—such as query changes or indexing. Scaling up is useful to handle spikes in your workloads where the current performance level cannot satisfy all the demands. Scaling up lets you add more resources to easily handle peak workloads. Then, when the resources are not needed anymore, scaling down lets you go back to the original state and save on cloud costs.

Scale up when:

  • You see that your workloads are hitting some performance limit such as CPU or I/O limits.

  • You need to quickly react to fix performance issues that can't be solved with classic database optimization.

  • You need a solution that allows you to change service tiers to adapt to changing latency requirements.

Scaling out horizontally

App developers start to consider scaling out or horizontal scaling when they can't get enough resources for their workloads, even operating on the highest performance levels. With horizontal scaling, data is split into several databases, or shards, across servers, and each shard can be scaled up or down independently.

How does partitioning data improve scalability? When you scale up a single database by adding resources such as virtual machines (VMs), it will eventually reach a physical hardware limit. Because data partitions are each hosted on a separate server, if you divide data across multiple shards, you can scale out a system almost limitlessly.

Some types of database technologies, most notably nonrelational orNoSQL databases, are developed with unique capabilities to scale out data horizontally byDatabase sharding—enabling them to handle large, unrelated, indeterminate, or rapidly changing data.

And, some relational (SQL) database services that originally offered services to scale up or down are beginning to offer exciting options to match the scalability advantages of nonrelational databases. Hyperscale services likeMicrosoft Azure SQL Database HyperscaleandAzure Database for PostgreSQL Hyperscaleenable users to rapidly scale storage up to 100 TB, provide flexible, cloud-native architecture allowing storage to grow as needed, and enable nearly instantaneous backups and fast database restores in only minutes.

Scale out when:

  • You have geo-distributed applications where every app should access part of the data in the region. Each app will access only the shard associated to that region without affecting other shards.

  • You have a global sharding scenario—such as load balancing—where you have a large number of geo-distributed clients that insert data in their own dedicated shards.

  • You've maxed out your performance requirements, even in the highest performance tiers of your service, or if your data cannot fit into a single database.

Autoscaling

Autoscaling is the process of automatically and dynamically matching resources to meet the performance requirements of a system. As the volume of work grows, apps may need additional resources to maintain the necessary performance levels or meet growing demand. If demand slows down and the additional resources are no longer needed, you can save on cloud spend by having an automatic service in place to de-allocate unused resources.

Autoscaling takes advantage of the elasticity of cloud-hosted environments. It eases management overhead by reducing the need for system operators to constantly make decisions about adding or removing resources or checking the system's performance.

While there are two main ways that apps can scale—vertically or horizontally— it's less common to automate vertical scaling, because scaling up often requires making the system temporarily unavailable while it is being redeployed.

Autoscaling is more common when scaling horizontally because scaling out or in means just adding or removing instances of a resource and your app continues running without interruption as new resources are provisioned. If demand drops, resources can be shut down seamlessly without downtime and de-allocated.

Many providers of cloud-based systems, such as Microsoft Azure, support automatic horizontal scaling.

  • Learn more about fast NoSQL database autoscaling with Azure Cosmos DB
  • Learn more about scalability with Azure SQL Database

Frequently asked questions

  • Learn more cloud computing terms

|

  • A database is any collection of interrelated information that's stored and organized so that it's easier to manage and access. As new data and data types are being generated at a dizzying pace, it becomes a challenge to keep that data organized, accessible, and secure. Database management systems (DBMS)—which include a layer of management tools—are often used to handle huge volumes of data.

    New database types and technologies are constantly arising to adapt to the sheer volume and vast array of data generated from the cloud, mobile, social media, and big data.

    Learn more about databases

  • NoSQL databases, often referred to as nonrelational or "not only" SQL, are a diverse set of database technologies that handle data storage and retrieval differently from a traditional, relational (SQL) database.

    NoSQL databases do not require a predefined schema and are able to use multiple data models—making them extremely effective at handling high volumes of unstructured data and scaling big data database projects.

    Learn more about NoSQL databases

  • PostgreSQL is a robust, open-source database that works with relational and nonrelational querying, known for its dependability and data integrity. PostgreSQL is widely used in fields such as financial services, manufacturing, government geographic information systems, and web technology. Developers create apps with PostgreSQL, while administrators trust it to protect their data.

    Learn more about PostgreSQL

  • Caching is a common technique used by developers and IT professionals to improve the performance and scalability of a system. Caching works by temporarily copying frequently accessed data to fast storage that's located close to the app. If this fast data storage is located closer to the app than the original source, then caching can significantly improve response times for client apps by serving data more quickly. Developers often design apps to cache processed data and then repurpose the cache to serve requests faster than in standard database queries.

    Learn more about caching

  • Data sharding is a type of horizontal data partitioning that lets you divide your large database into smaller databases, which can be managed faster and more easily across servers.

    Learn more about database sharding

  • A platform as a service, often abbreviated PaaS, is a service from a cloud provider that offers an on-demand environment for app development, testing, delivery, and management. Platform as a service makes it simpler and quicker for developers to create web or mobile apps—without having to deal with setting up or managing the underlying infrastructure of servers, storage, network, and databases they need as developers.

    Learn more about PaaS

Scaling Out vs Scaling Up | Microsoft Azure (4)

Resources

Scaling Out vs Scaling Up | Microsoft Azure (5)

Quickstarts and learning modules

Explore Azure database and analytics services

Dynamically scale database resources with minimal downtime with Azure SQL

Alternative methods to scale your database

Create a Hyperscale (Citus) server group in the Azure portal

Scaling Out vs Scaling Up | Microsoft Azure (6)

Database migration

Accelerate, guide, and automate your database migration

Start your cloud journey at the Azure migration center

Discover, assess, and migrate on-prem apps, infrastructure, and data with Azure Migrate

Explore cloud scalability with Azure

Discover a comprehensive approach to scaling up vs. scaling out—one that fits your own scenario across on-premises, multicloud, and edge environments. The Azure family of database services offers a choice of fully managed relational, NoSQL, and in-memory databases, spanning proprietary and open-source engines, to fit the needs of modern app developers.

Save time and money with automated infrastructure management—including automation solutions for scalability, availability, and security.

Find the right database products for your needs with Azure

Scaling Out vs Scaling Up | Microsoft Azure (7)

Related products and services

Scaling Out vs Scaling Up | Microsoft Azure (8)

Azure SQL

Family of SQL cloud databases providing flexible options for app migration, modernization, and development.

Scaling Out vs Scaling Up | Microsoft Azure (9)

Azure Cosmos DB

Fast NoSQL database with open APIs for any scale.

Scaling Out vs Scaling Up | Microsoft Azure (10)

Azure PostgreSQL

Fully managed, intelligent, and scalable PostgreSQL.

Scaling Out vs Scaling Up | Microsoft Azure (11)

Azure SQL Database

Managed intelligent SQL in the cloud.

Scaling Out vs Scaling Up | Microsoft Azure (12)

Azure SQL Managed Instance

Managed, always up-to-date SQL instance in the cloud.

Scaling Out vs Scaling Up | Microsoft Azure (13)

SQL Server on Virtual Machines

Migrate SQL Server workloads to the cloud at the lowest TCO.

Scaling Out vs Scaling Up | Microsoft Azure (14)

Azure Database for MySQL

Fully managed, scalable MySQL database.

Scaling Out vs Scaling Up | Microsoft Azure (15)

Azure Maria DB

Managed MariaDB database service for app developers.

Scaling Out vs Scaling Up | Microsoft Azure (16)

Azure Cache for Redis

Accelerate applications with high-throughput, low-latency data caching.

  • Scaling Out vs Scaling Up | Microsoft Azure (17)

    Scale without limits with managed databases

    Focus on building apps and make your job simpler with your databases managed by Microsoft Azure.

    Get started

Ready when you are—let's set up your free account

Start free

Scaling Out vs Scaling Up | Microsoft Azure (2024)

FAQs

What is the difference between scaling out and scaling up in Azure? ›

You scale up by changing the pricing tier of the App Service plan that your app belongs to. Scale out: Increase the number of VM instances that run your app. Basic, Standard, and Premium service plans scale out to as many as 3, 10, and 30 instances, respectively.

Which is better scaling up or scaling out? ›

In short, if you have a bigger budget and expect a steady and large growth in data over a long period of time and need to distribute an overstrained storage workload across several storage nodes, scaling out is the best option.

What is the difference between scale up and scale out network? ›

Scaling up vertically means adding more compute resources—such as CPU, memory, and disk capacity—to an application pod. On the other hand, applications can scale out horizontally by adding more replica pods.

What are the two types of scaling in Azure? ›

While there are two main ways that apps can scale—vertically or horizontally— it's less common to automate vertical scaling, because scaling up often requires making the system temporarily unavailable while it is being redeployed.

What is the difference between scaling up and scaling out quizlet? ›

Explain the difference between scaling up and scaling out. In short, scaling up is getting a bigger machine and scaling out is partitioning data across more machines.

What is the difference between scale out and scale up manufacturing? ›

Scale-out can be straightforward because the production unit remains the same. However, reproducibility can be difficult to achieve. Scale-up, on the other hand, can be more complex and requires more planning, but it can lower the costs of the product in the long term.

Why is scaling up difficult? ›

The people who were a good match for the company when it was a startup are often not the best people to be working for the company when it begins scaling up. This mismatch requires a lot of social adjustment. The longer the company has been in the startup phase, the more difficult that adjustment can be.

What is the best use of scaling out? ›

Scaling Out to Increase Capacity

Scale-out storage can also enable infrastructure to be more resilient to failures than a single system. It's ideal for applications that can be easily distributed across multiple systems, such as web servers or file storage systems.

Which scaling is preferred? ›

Horizontal scaling is a good choice when you need to handle high traffic volumes, while vertical scaling is more suitable for complex tasks that require greater processing power.

What is the difference between scale up and scale out Microservices? ›

Scaling Up- When a stateful application needs more power, you can scale it up by giving it more resources, like upgrading the server or adding more memory. Scaling Out- Since stateful applications store data, scaling out involves adding more instances while ensuring they can share the same data.

What is the difference between scale and scale out? ›

So, "Scale-Up/Down" is about increasing or decreasing the size or power of something, while "Scale-Out/In" is about increasing or decreasing the number of things you have. These terms are commonly used in technology to talk about changing the size or capacity of computer systems or networks.

What is the difference between vertical scaling up and horizontal scaling out? ›

How is this different from horizontal scaling? While horizontal scaling refers to adding additional nodes, vertical scaling describes adding more power to your current machines. For instance, if your server requires more processing power, vertical scaling would mean upgrading the CPUs.

What is the difference between scale out and scale up in Azure? ›

Two examples of scale up operations in Windows Azure Web Sites are: Scale Out means: A scale out operation is the equivalent of creating multiple copies of your web site and adding a load balancer to distribute the demand between them.

What are the two main types of scaling in cloud computing? ›

There are two basic types of scalability in cloud computing: vertical and horizontal scaling.

What is the difference between load balancer and auto scaling in Azure? ›

The number of resources is up or down as needed. In summary, Auto Scaling helps to ensure the optimal use of resources, while Load Balancer helps to distribute the workload evenly and provides high availability.

What is the difference between scaling in and scaling out trading? ›

In both cases, the aim is to lower the average entry cost, thus requiring a smaller price change to break even or generate a profit. Conversely, Scaling Out involves gradually selling off parts of a position as the price increases (for long positions) or covering parts of a short position as the price decreases.

What is the difference between scaling up and scaling deep? ›

This highlights that achieving systemic impacts can involve three types of scaling -scaling up (by changing institutions at the policy level), scaling deep (by changing values and beliefs to impact cultural roots), and scaling out (by replicating and disseminating among more communities) (Moore et al. 2015) .

What is the difference between scale up and scale out snowflake? ›

Scaling up vs scaling out. Snowflake supports two ways to scale warehouses: Scale up by resizing a warehouse. Scale out by adding clusters to a multi-cluster warehouse (requires Snowflake Enterprise Edition or higher).

Top Articles
Why Learning Python in 2024 is still a Good Idea?
How do I transfer cash or securities between my TD accounts and my TD Easy Trade account?
123Movies Encanto
Palm Coast Permits Online
Libiyi Sawsharpener
Ffxiv Palm Chippings
Euro (EUR), aktuální kurzy měn
Boomerang Media Group: Quality Media Solutions
Coffman Memorial Union | U of M Bookstores
Es.cvs.com/Otchs/Devoted
Practical Magic 123Movies
What Auto Parts Stores Are Open
Stl Craiglist
Arrests reported by Yuba County Sheriff
Teamexpress Login
Fnv Turbo
Best Cav Commanders Rok
Hardly Antonyms
Bros Movie Wiki
Palace Pizza Joplin
Studentvue Columbia Heights
Lancasterfire Live Incidents
Invert Clipping Mask Illustrator
Labby Memorial Funeral Homes Leesville Obituaries
Zoe Mintz Adam Duritz
Www Craigslist Com Bakersfield
Hewn New Bedford
Watertown Ford Quick Lane
Culver's.comsummerofsmiles
Truvy Back Office Login
Narragansett Bay Cruising - A Complete Guide: Explore Newport, Providence & More
Farm Equipment Innovations
Paradise Point Animal Hospital With Veterinarians On-The-Go
Page 2383 – Christianity Today
Deepwoken: Best Attunement Tier List - Item Level Gaming
Robert A McDougal: XPP Tutorial
Kacey King Ranch
Fairwinds Shred Fest 2023
Storelink Afs
NIST Special Publication (SP) 800-37 Rev. 2 (Withdrawn), Risk Management Framework for Information Systems and Organizations: A System Life Cycle Approach for Security and Privacy
Sedano's Supermarkets Expands to Orlando - Sedano's Supermarkets
Lichen - 1.17.0 - Gemsbok! Antler Windchimes! Shoji Screens!
Snohomish Hairmasters
Thanksgiving Point Luminaria Promo Code
Daly City Building Division
Noaa Marine Weather Forecast By Zone
No Boundaries Pants For Men
Top 40 Minecraft mods to enhance your gaming experience
Rise Meadville Reviews
Epower Raley's
ats: MODIFIED PETERBILT 389 [1.31.X] v update auf 1.48 Trucks Mod für American Truck Simulator
Latest Posts
Article information

Author: Rev. Leonie Wyman

Last Updated:

Views: 5634

Rating: 4.9 / 5 (79 voted)

Reviews: 86% of readers found this page helpful

Author information

Name: Rev. Leonie Wyman

Birthday: 1993-07-01

Address: Suite 763 6272 Lang Bypass, New Xochitlport, VT 72704-3308

Phone: +22014484519944

Job: Banking Officer

Hobby: Sailing, Gaming, Basketball, Calligraphy, Mycology, Astronomy, Juggling

Introduction: My name is Rev. Leonie Wyman, I am a colorful, tasty, splendid, fair, witty, gorgeous, splendid person who loves writing and wants to share my knowledge and understanding with you.