# Microsoft Azure capacity planning

This page describes capacity planning for deploying Aerospike Database in Microsoft Azure.

The two most common use-cases for Aerospike are:

-   An in-memory cache with no persistence
-   A fast persistent data store

## Aerospike as in-memory with no persistence

The [Data In-Memory without Persistence](https://aerospike.com/docs/database/manage/namespace/storage/config/#setup-in-memory-without-storage-backed-persistence) storage engine is ideal for a cache based use-case.

## Aerospike as a fast persistent data store

The storage engine suited for this use case is the [SSD Storage Engine](https://aerospike.com/docs/database/manage/namespace/storage/config/#setup-for-an-ssd-storage-engine).

Azure provides SSD storage in the form of Premium Storage. These are network attached to virtual machine instances.

### Local SSDs backed by premium storage persistence

This is the recommended storage engine in cloud environments.

**Pros:**

-   RAM requirement is the same as the persistence model only.
-   Provides persistence offered by Storage Disks while surpassing the performance bottleneck by making use of local SSD performance as a caching layer.
-   Provides the best of performance and persistence possible by using local SSDs as aRAM alternative along with Storage Disks for persistence storage.

**Drawbacks:**

-   More operational overhead than any other storage models.
-   Must use instances supporting the required amount of local SSD instance storage volumes.

## Instance types

Presently, we recommend using the **Lsv2** instances. These support Premium Storage, which are SSD-based network storage, as well as having local SSDs. See [Certifying Flash Devices (SSDs)](https://aerospike.com/docs/database/manage/planning/ssd/certification).

Instance families with ‘S’ in their designation have Premium Storage (SSD) support. If no persistence is required, non-’s’ families can be used.

## Disk caching

Azure provides a unique [disk caching](https://docs.microsoft.com/en-us/azure/storage/storage-premium-storage-performance#disk-caching) feature that accelerates disk access for both local and persisted disks.

If your access pattern is predominantly read based, it would be advisable to configure the Disk Caching to `ReadOnly`. `ReadOnly` caching also benefits access patterns that are less random or uniform and more concentrated, such as zipfian, last-access, and hotspot distributions.

::: caution
Aerospike recommends testing your personal workload for any potential benefits of `ReadOnly` disk caching.

Aerospike does not recommend `ReadWrite` disk based caching.
:::

## Related documentation

For more information about disk and memory sizing, see [Capacity planning guide](https://aerospike.com/docs/database/manage/planning/capacity). For more information about storage options, see [Configure namespace storage](https://aerospike.com/docs/database/manage/namespace/storage/config).