The AWS Well-Architected Framework provides best practices for designing and operating reliable, secure, efficient, and cost-effective systems in the cloud, including database layer considerations.
The AWS Well-Architected Framework has six pillars, each including best practices and questions to consider when architecting cloud solutions. This section highlights best practices most relevant to database layer design.
As a cloud architect adding a database layer, you need to:
Evaluate available database options before selecting data management solution to optimize performance
Secure infrastructure effectively so data is durable and safe from threats
Consider cost implications while meeting technical requirements
Implement secure key management and enforce encryption at rest to protect data residing in database storage.
Secure Key Management
Define encryption approach including storage, rotation, and access control of keys to protect against unauthorized access
Enforce Encryption at Rest
Ensure the only way to store data is by using encryption, integrating seamlessly with AWS services
Encryption maintains confidentiality of sensitive data in event of unauthorized access or accidental disclosure, reducing risk when encryption and appropriate access controls are implemented.
Select the correct resource type, size, and number based on data to meet technical requirements with lowest cost resource.
Right-Sizing Process
Data-Based Selection: Select resource size or type based on data about workload and resource characteristics such as compute, memory, throughput, or write intensive
Iterative Process: Right-sizing can be iterative, initiated by changes in usage patterns and external factors like AWS price drops or new resource types
Workload Analysis: Use previous on-premises version, documentation, or other sources of information about workload characteristics
Use CloudWatch metrics to monitor database performance and identify optimization opportunities
Set up alerts for performance thresholds and cost anomalies
Regularly review and adjust database configurations based on actual usage patterns
Security Monitoring:
Use AWS CloudTrail to monitor database access and configuration changes
Implement AWS Config rules to ensure compliance with security policies
Regular security assessments and access reviews
Cost Monitoring:
Use AWS Cost Explorer to analyze database spending patterns
Set up billing alerts for unexpected cost increases
Regular right-sizing reviews based on actual utilization
The AWS Well-Architected Framework principles provide comprehensive guidance for designing database layers that are performant, secure, and cost-effective while meeting business requirements and maintaining operational excellence.