# PERF03-BP02 - Evaluate available configuration options for data store

Best practice: PERF03-BP02
Pillar: Performance Efficiency
Source: https://wellarchitected.cloudvisor.eu/docs/performance-efficiency/perf03-bp02.html

## Implementation Guidance

Use "Evaluate available configuration options for data store" to make architecture and operational choices based on evidence rather than assumptions. Define clear criteria, collect current-state data, and compare options against business outcomes and risk tolerance.

For the question "How do you select your storage solution?", define measurable outcomes, assign owners, and review execution regularly. Integrate this practice into delivery and operations processes so improvements persist as workloads and requirements evolve.

### Key Steps

1. **Define decision criteria and scope**:
   - Document what "Evaluate available configuration options for data store" must address in your environment
   - Set quantitative and qualitative criteria for comparing options
   - Identify stakeholders who approve final decisions

2. **Perform analysis with objective evidence**:
   - Collect metrics, constraints, and dependency data from current operations
   - Compare alternatives against reliability, performance, and risk outcomes
   - Record tradeoffs and assumptions in an architecture decision log

3. **Operationalize and revisit decisions**:
   - Implement selected decisions with explicit owner accountability
   - Define review triggers for demand, risk, or architecture changes
   - Update standards and patterns based on observed outcomes

## Risk / Impact

**Level of risk if not implemented**: Medium

**Impact**: Without this best practice, workloads typically accumulate inefficiencies and execution drift that increase failure probability over time. Problems often surface during traffic spikes, major releases, or dependency failures.

**Benefits of implementation**:
- More predictable operational and engineering outcomes
- Better alignment between architecture decisions and business goals
- Continuous improvement through measurable feedback loops

## AWS Services to Consider

<div class="aws-service">
  <div class="aws-service-content">
    <h4>Amazon S3</h4>
    <p>Delivers durable object storage with lifecycle controls for efficient data management.</p>
  </div>
</div>

<div class="aws-service">
  <div class="aws-service-content">
    <h4>Amazon EBS</h4>
    <p>Provides block storage options optimized for different IOPS and throughput profiles.</p>
  </div>
</div>

<div class="aws-service">
  <div class="aws-service-content">
    <h4>Amazon EFS</h4>
    <p>Provides elastic shared file storage for Linux workloads across compute instances.</p>
  </div>
</div>

<div class="aws-service">
  <div class="aws-service-content">
    <h4>Amazon FSx</h4>
    <p>Offers managed high-performance file systems for specialized workload requirements.</p>
  </div>
</div>

## Related Resources

<div class="related-resources">
  <h2>Related Resources</h2>
  <ul>
    <li><a href="https://docs.aws.amazon.com/wellarchitected/latest/framework/perf-03.html">PERF03: How do you select your storage solution?</a></li>
    <li><a href="https://docs.aws.amazon.com/wellarchitected/latest/performance-efficiency-pillar/welcome.html">AWS Well-Architected Framework - Performance Efficiency Pillar</a></li>
    <li><a href="https://docs.aws.amazon.com/wellarchitected/latest/performance-efficiency-pillar/design-principles.html">Performance Efficiency Design Principles</a></li>
  </ul>
</div>
