diff --git a/content/embeds/hardware-requirements-embed.md b/content/embeds/hardware-requirements-embed.md index 5e83d04391..270274012b 100644 --- a/content/embeds/hardware-requirements-embed.md +++ b/content/embeds/hardware-requirements-embed.md @@ -41,7 +41,8 @@ We recommend these hardware requirements for production systems or for developme | Ephemeral storage | Used for storing [replication files (RDB format) and cluster log files]({{< relref "/operate/rs/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage" >}}). | RAM x 2 | >= RAM x 4 | | Persistent storage[4](#table-note-4) | Used for storing [snapshot (RDB format) and AOF files]({{< relref "/operate/rs/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage" >}}) over a persistent storage media, such as AWS Elastic Block Storage (EBS) or Azure Data Disk. | RAM x 3 | In-memory >= RAM x 4 (except for [extreme 'write' scenarios]({{< relref "/operate/rs/clusters/optimize/disk-sizing-heavy-write-scenarios" >}}))

[Redis Flex and Auto Tiering]({{< relref "/operate/rs/databases/flash/" >}}) >= (RAM + Flash) x 4. | | Network[5](#table-note-5) | We recommend using multiple NICs per node where each NIC is >1Gbps, but Redis Software can also run over a single 1Gbps interface network used for processing application requests, inter-cluster communication, and storage access. | 1G | >=10G | -| Local disk for [Redis Flex and Auto Tiering]({{< relref "/operate/rs/databases/flash/" >}}) | used to to extend databases DRAM capacity with solid state drives (SSDs). Flash memory must be locally attached. [Read more]({{< relref "/operate/rs/databases/flash/" >}}) | (RAM+Flash) x 1.6 | (RAM+Flash) x 2.5 | +| Local disk for [Auto Tiering]({{< relref "/operate/rs/databases/flash/" >}}) | Used to extend an Auto Tiering database's DRAM capacity with solid state drives (SSDs). Flash memory must be locally attached. [Read more]({{< relref "/operate/rs/databases/flash/" >}}) | (RAM+Flash) x 1.6 | (RAM+Flash) x 2.5 | +| Local disk for [Flex]({{< relref "/operate/rs/flex/" >}})[6](#table-note-6) | Used to extend a Flex database's DRAM capacity with solid state drives (SSDs). Flash memory must be locally attached. [Read more]({{< relref "/operate/rs/flex/" >}}) | (Total memory limit of all Flex databases on the node) x 3 | (Total memory limit of all Flex databases on the node) x 3 | Additional considerations: @@ -82,3 +83,7 @@ Additional considerations: - Only static IP addresses are supported to ensure nodes remain part of the cluster after a reboot. +6. Local disk for Flex: + + - Because you can increase a database's memory limit after creation, size the local disk for the expected peak memory limit. + diff --git a/content/operate/rs/databases/flash/_index.md b/content/operate/rs/databases/flash/_index.md index 5bb1e06320..9d37d0b8b6 100644 --- a/content/operate/rs/databases/flash/_index.md +++ b/content/operate/rs/databases/flash/_index.md @@ -90,7 +90,8 @@ Implementing Flex requires pre planning around memory and sizing. Considerations - Flash memory must be locally attached. Using network-attached storage (NAS), storage area networks (SAN), or solutions such as AWS Elastic Block Storage (EBS) is not supported. - Flash memory must be dedicated to Flex and not shared with other parts of the database, such as durability, binaries, or persistence. - For the best performance, the SSDs should be NVMe based, but SATA can also be used. -- The available flash space must be greater than or equal to the total database size (RAM+Flash). The extra space accounts for write buffers and [write amplification](https://en.wikipedia.org/wiki/Write_amplification). +- For Auto Tiering, the available flash space must be greater than or equal to the total database size (RAM+Flash). The extra space accounts for write buffers and [write amplification](https://en.wikipedia.org/wiki/Write_amplification). +- For Flex, flash space should be approximately three times the total memory limit of all Flex databases on the node. Because you can increase a database's memory limit after creation, size flash space for the expected peak memory limit. {{}} The Redis Software database persistent and ephemeral storage should be on different disks, either local or attached. {{}} diff --git a/content/operate/rs/databases/memory-performance/memory-limit.md b/content/operate/rs/databases/memory-performance/memory-limit.md index c05489d9c1..1cb53c0306 100644 --- a/content/operate/rs/databases/memory-performance/memory-limit.md +++ b/content/operate/rs/databases/memory-performance/memory-limit.md @@ -37,9 +37,11 @@ Additional factors for Active-Active databases: It's also important to know Active-Active databases have a lower threshold for activating the eviction policy, because it requires propagation to all participating clusters. The eviction policy starts to evict keys when one of the Active-Active instances reaches 80% of its memory limit. -Additional factors for databases with Auto Tiering enabled: +Additional factors for databases with flash enabled: -- The available flash space must be greater than or equal to the total database size (RAM+Flash). The extra space accounts for write buffers and [write amplification](https://en.wikipedia.org/wiki/Write_amplification). +- For [Auto Tiering]({{}}), the available flash space must be greater than or equal to the total database size (RAM+Flash). The extra space accounts for write buffers and [write amplification](https://en.wikipedia.org/wiki/Write_amplification). + +- For [Flex]({{}}), flash space should be approximately three times the total memory limit of all Flex databases on the node. Because you can increase a database's memory limit after creation, size flash space for the expected peak memory limit. - [**database persistence**]({{< relref "/operate/rs/databases/configure/database-persistence.md" >}}): Auto Tiering uses dual database persistence where both the primary and replica shards persist to disk. This may add some processor and network overhead, especially in cloud configurations with network attached storage. diff --git a/content/operate/rs/flex/plan.md b/content/operate/rs/flex/plan.md index 3b02413570..a0c8305a1e 100644 --- a/content/operate/rs/flex/plan.md +++ b/content/operate/rs/flex/plan.md @@ -41,7 +41,7 @@ When planning a Flex deployment, consider the following flash drive requirements - For the best performance, the SSDs should be NVMe based. NVMe Gen 5 or Gen 4 is recommended. Gen 3 is also supported, but not recommended for best performance. -- Flash storage must be greater than the total provisioned database size to account for write buffers, space amplification, and more. +- Flash storage must be greater than the total provisioned database size to account for write buffers, space amplification, and more. Flash space should be approximately three times the total memory limit of all Flex databases on the node. Because you can increase a database's memory limit after creation, size flash storage for the expected peak memory limit. See the general Redis Software [hardware requirements]({{}}) for additional requirements.