Bedrock Streaming has developed a robust strategy to optimize its AWS costs while providing services to prominent European broadcasters like M6+, Videoland, and RTL+. With an annual AWS budget in the millions, the company focuses on turning technical decisions into opportunities for cost savings.
Challenges in Cost Management: Video streaming companies face increasing traffic and complexity, making cost management a critical challenge. Bedrock Streaming addresses this with a systematic cloud financial operations (FinOps) approach, which has been in place since their AWS migration began in 2018.
Innovative Approaches: The company utilizes a multi-axis FinOps strategy that includes:
- Kubernetes worker nodes operating entirely on Amazon EC2 Spot Instances
- Utilization of AWS Graviton Processors
- Rationalization of AWS API calls
- Continuous video streaming optimization
- Careful management of data storage
This strategy allows Bedrock Streaming to leverage technical decisions for cloud cost optimization effectively.
Key Cost Optimization Techniques: Bedrock Streaming employs two primary strategies to manage AWS compute costs:
- Instance reservations for managed services like Amazon RDS and capacity reservations for Amazon DynamoDB.
- Replacing traditional EC2 reservations with Spot Instances to accommodate fluctuating traffic demands.
During peak times, the infrastructure automatically switches to on-demand instances if Spot capacity is limited, ensuring reliability.
Storage and Data Management: Efficient storage management is crucial. Bedrock Streaming utilizes Amazon S3 with advanced features like Intelligent Tiering and lifecycle management to optimize costs. They also monitor and purge obsolete Docker images in Amazon ECR, leading to significant cost reductions.
Network Cost Optimization: The implementation of VPC endpoints for Amazon S3 and DynamoDB has eliminated transit costs, while architectural changes in their video-on-demand solution have reduced inter-Availability Zone transfer costs to nearly zero.
Monitoring and Metrics Management: Bedrock Streaming uses a centralized approach for monitoring metrics, exporting data to a Prometheus stack. This method has reduced API call costs significantly by aligning collected metrics with actual usage.
Conclusion: By integrating cost optimization strategies from the project's inception, Bedrock Streaming exemplifies how organizations can manage AWS expenses effectively. Their approach not only reduces costs but also enhances operational efficiency, making it a model for other industries.