Media Encoding Broker Tier Using Main Memory
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The increasing demand for online media content delivery, driven by higher quality content and cloud-based encoding, requires a scalable cloud-based encoding platform that can dynamically scale resources without disrupting existing operations.
Innovation Solution
A scalable architecture for a media content encoding platform is introduced, partitioned into independent tiers (slicing, broker, and encoding) that can be horizontally and vertically scaled, with optimized broker tier management using main memory and eliminating database storage to minimize delays and bottlenecks, allowing for decentralized and seamless resource allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If cloud-based encoding platform scales resources dynamically, then resource allocation efficiency is improved, but system complexity increases
Solution Approach 1:
The encoding platform is divided into distinct modular components including encoding resources, broker resources, and slicing resources. Each component operates independently with well-defined interfaces, allowing individual scaling without affecting other parts of the system. The broker tier is further segmented into multiple broker instances that can be horizontally scaled to handle increased demand.
Solution Approach 2:
The platform implements dynamic resource allocation where encoding resources can be added or removed based on demand. The broker tier dynamically manages resource allocation and load balancing. Resources can be scaled up or down without interrupting ongoing encoding operations, enabling flexible adaptation to changing workload requirements.
2Productivity
If additional encoding resources are introduced, then encoding capacity is improved, but disruption to existing operations occurs
Solution Approach 1:
New encoding resources are pre-configured and registered with the broker tier before being activated. The broker tier maintains an updated inventory of available resources and proactively manages load distribution. This preliminary setup ensures that resource addition occurs smoothly without disrupting ongoing encoding operations.
Solution Approach 2:
The platform maintains continuous encoding operations while resources are scaled. The broker tier implements load balancing that distributes work across available resources, ensuring that existing encoding jobs continue uninterrupted while new resources become available to handle additional demand.
3Quantity of substance
If database storage is used in broker tier, then data persistence is improved, but processing delays increase
Solution Approach 1:
The broker tier extracts the database storage dependency and implements a memory-based resource management approach. Resource allocation data and state information are maintained in volatile memory rather than database storage, eliminating database query delays and enabling faster resource allocation and broker communication.
4Ease of operation
If resource allocation is centralized, then control is improved, but scalability is limited
Solution Approach 1:
Resource allocation control is segmented across multiple broker instances rather than centralized in a single broker. Each broker manages a portion of the resource pool and can independently make allocation decisions. This distributed architecture maintains control through standardized protocols while enabling horizontal scaling by adding more broker instances.
Solution Approach 2:
The broker tier implements a universal resource management protocol that works across all broker instances and encoding resources. This standardized interface enables any broker to manage any encoding resource, providing flexibility and simplifying the scaling process as resources can be dynamically assigned to different brokers based on load conditions.
Data Source
AI summary
A scalable architecture is provided for decentralized scaling of resources in a media content encoding platform. The scalable architecture is comprised of a first slicing tier, a second broker tier, and a third encoding tier. Each tier can be horizontally and vertically scaled independent of one another. The second broker tier receives media content slices from the first slicing tier. The second broker tier retains the slices directly in main memory of different brokers without writing the slices to a database or disk. The brokers distribute the slices from main memory across the third encoding tier for encoding based on availability of different encoders in the third tier. This architecture improves overall encoding performance as some of the delays associated with managing and distributing the slices at the second tier are eliminated by operation of the brokers.


