Media Block Storage for Streaming Server Capacity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The high cost of maintaining high-capacity servers for media streaming due to the large number of users and vast media libraries, necessitates a more efficient method for storing and streaming media without compromising user experience.
Innovation Solution
Implementing a system where media is stored between a high-speed server and slower, cheaper long-term memory, by grouping media segments into blocks and storing non-current blocks in long-term memory, allowing for efficient retrieval and streaming while managing storage capacity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If media is stored on high-capacity servers to serve large numbers of users, then user access and streaming capability are improved, but storage costs increase significantly
Solution Approach 1:
The patent segments media content into discrete media segments and organizes them into media blocks with specific time intervals. This segmentation enables selective storage and retrieval of only the media blocks needed for current or near-future streaming, rather than storing entire media libraries on expensive servers. The segmentation allows the system to manage storage resources efficiently by loading, storing, and removing media blocks based on predicted streaming demand.
Solution Approach 2:
The system performs preliminary actions by pre-loading media blocks that are predicted to be needed for future streaming onto the server before they are actually requested. This allows the server to have relevant media content ready in advance, ensuring fast streaming performance when users request content, while avoiding the need to store all possible media content simultaneously on expensive server storage.
2Speed
If all media blocks are stored on the server, then streaming speed is maintained, but server storage capacity and cost increase
Solution Approach 1:
The patent implements a dynamic storage strategy where the set of media blocks stored on the server changes over time based on predicted streaming demand. Media blocks are loaded onto the server before they are needed for streaming and are removed after they are no longer needed. This dynamic approach ensures that the server always contains the media blocks most likely to be streamed next, maintaining fast streaming performance while minimizing the total storage capacity required at any given moment.
3Productivity
If media blocks are loaded into server memory for future streaming, then streaming performance is improved, but memory management complexity increases
Solution Approach 1:
The system employs predictive algorithms that automatically analyze streaming patterns and predict which media blocks will be needed in the future. This self-service approach allows the system to autonomously make decisions about which media blocks to load onto the server and which to remove from memory, without requiring complex manual memory management. The predictive capability handles the complexity of memory management by automatically optimizing server memory usage based on actual streaming behavior.
Data Source
AI summary
The method for storing streaming media includes receiving, from a user device, a request to navigate to a requested time of a media stream. The method also includes determining whether a block of media segments that have a time interval that overlaps with the requested time is stored at the server. The method also includes retrieving the block of media segments from long-term memory in accordance with a determination that the block of media segments is not stored at the server. The method also includes traversing the block of media segments that have a time interval that overlaps with the requested time of the media stream to seek and identify a media segment corresponding to the requested time of the media stream. The method also includes streaming a media stream to the user device that begins at the media segment corresponding to the requested time of the media stream.


