Design for performance and scalability in Azure

Program Management Course

4.7

Optimize storage performance

Here, we'll take a look at how to optimize your storage performance in your architecture.

Optimize virtual machine storage performance

Let's first look at optimizing storage for virtual machines. Disk storage plays a critical role in the performance of your virtual machines, and selecting the right disk type for your application is an important decision.

Different applications are going to have different storage requirements. Your application may be sensitive to latency of disk reads and writes or it may require the ability to handle a large number of input/output operations per second (IOPS) or greater overall disk throughput.

Optimize storage performance for your application

While you can use differing storage technologies to improve the raw disk performance, you can also address the performance of access to data at the application layer. Let's take a look at a few ways you can do this.

Caching

A common approach to improve application performance is to integrate a caching layer between your application and your data store. A cache typically stores data in memory and allows for fast retrieval. This data can be frequently accessed data, data you specify from a database, or temporary data such as user state.

Polyglot persistence

Polyglot persistence is the usage of different data storage technologies to handle your storage requirements.

This is important, as different data stores are designed for certain use cases or may be more accessible because of cost. As an example, storing blobs in a SQL database may be costly and slower to access than directly from a blob store.

Check your knowledge

  1. What is polyglot persistence?
  2. True or false: Redis Cache improves the performance of your application by storing a snapshot of data in memory.