Choosing the Right Throughput Mode for Amazon EFS: A Performance Guide

When using Amazon Elastic File System (EFS), selecting the right throughput mode is critical to balancing performance needs with cost efficiency. EFS offers three modes: Elastic Throughput (Default), Bursting Throughput, and Provisioned Throughput. Let's break down how they work and when to use each.

Here are the Performance Settings Options when Selecting Amazon EFS File system’s Throughput mode. (Image below)

How It Works

  • Automatically scales throughput performance up or down to meet workload needs

  • No need to specify or provision throughput capacity

  • Pay only for the amount of metadata and data read or written

  • No accrual or consumption of burst credits

Best For

  • Spiky or unpredictable workloads

  • Performance requirements that are difficult to forecast

  • Applications that drive throughput at an average-to-peak ratio of 5% or less

Considerations

  • Available only for file systems using General Purpose performance mode

  • Simplifies management by eliminating the need for manual throughput adjustments

Bursting Throughput Mode

How It Works

  • Baseline Throughput: Scales with storage size (50 KiB/s per GiB of data stored)

  • Burst Capability: Accumulate credits when below baseline, allowing temporary higher throughput

Best For

  • Variable workloads with occasional traffic spikes

  • Cost-efficient option for workloads not requiring sustained high throughput

Considerations

  • Monitor burst credits via Amazon CloudWatch (BurstCreditBalance)

  • Larger file systems (>1 TiB) can sustain longer bursts

Provisioned Throughput Mode

How It Works

  • Manually define throughput (MiB/s) independent of storage size

  • Pay for storage fees + hourly charges for provisioned throughput

Best For

  • Steady, high-throughput needs

  • Predictable workloads requiring consistently high performance

Considerations

  • Use when baseline bursting limits are insufficient

  • Adjust provisioned throughput as needs change

Key Differences

FactorElastic ThroughputBursting ThroughputProvisioned Throughput
Cost ModelPay for read/write operationsIncluded with storageStorage + hourly throughput fees
PerformanceAutomatically scalesScales with storage sizeFixed, user-defined
Workload TypeSpiky/unpredictableVariable with occasional spikesSteady, high-demand
ComplexityLowest (AWS manages scaling)Low (AWS manages bursting)Requires monitoring and adjustments

How to Choose

  1. Start with Elastic Throughput if:

    • Your workload is unpredictable or spiky

    • You want simplified management and cost optimization

  2. Consider Bursting Throughput if:

    • You have variable workloads with occasional spikes

    • Cost savings are a priority over guaranteed throughput

  3. Switch to Provisioned Throughput if:

    • You need guaranteed throughput for latency-sensitive tasks

    • Your workload consistently requires high throughput

By aligning your EFS throughput mode with your application's needs, you can optimize both performance and costs.

Here's a summary of the key points:

  1. Elastic Throughput: Recommended for most workloads, especially those with unpredictable or spiky performance requirements.

  2. Bursting Throughput: Suitable for variable workloads with occasional traffic spikes, offering a balance between cost and performance.

  3. Provisioned Throughput: Ideal for steady, high-throughput needs and predictable workloads requiring consistently high performance.

Final Tips

  • Utilize Amazon CloudWatch metrics to monitor your file system's performance, including throughput usage and, if applicable, burst credit balance.

  • During development, test different throughput modes to compare cost-effectiveness and performance for your specific workload1.

  • Keep in mind that you can switch between throughput modes, but there's a 24-hour waiting period before making another change.

  • For most use cases, start with Elastic Throughput as it automatically scales to meet workload needs without manual intervention.

  • If you're unsure about your application's peak throughput requirements or have very spiky workloads, Elastic Throughput is often the best choice.

  • Consider using Provisioned Throughput when you have a clear understanding of your workload's performance needs and require guaranteed throughput.

By carefully considering these factors and leveraging the appropriate throughput mode, you can ensure that your Amazon EFS file system delivers optimal performance while maintaining cost efficiency for your specific use case.

Adapted from the Amazon EFS Performance Guide: https://docs.aws.amazon.com/efs/latest/ug/performance.html

Hope you have enjoyed the Blog. Thank you for Reading.

Happy Learning.

Like and Follow for more Azure and AWS Content.

Thank you,
Jineshkumar Patel

0
Subscribe to my newsletter

Read articles from Jineshkumar Patel directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Jineshkumar Patel
Jineshkumar Patel

Cloud Enthusiast working as Cloud Infrastructure Consultant. My Hobby is to build and destroy Cloud Projects for Blogs. Love to share my learning journey about DevOps, AWS and Azure. Subscribe and Follow up with "CloudCubes".Thank you and Happy Learning !!