Everyday, #Netflix handles billions of requests regarding movies, trailers and other video content. Delivering at such a large scale needs an #engineering marvel. This #video will talk about how Netflix is able to onboard new video content onto their platform. We go from video chunking to collating 4 second shots into scenes.
Amazon S3 is used to store the video chunks. Netflix also provides open connect servers to internet service providers, which acts like a cache of movies. Most requests to Netflix can be served by this cache, and the remaining are sent over the network. This reduces the bandwidth and time required for Netflix to operate at scale. Synergy at it's finest.
Video Formats and Resolutions
- Different formats
- High quality
- Medium quality
- Low quality
- Different resolutions
- 1080p
- 720p
- 480p
- Storage combination comes F x R -> V
- What netflix does is like broken down a video into smaller parts so that it can be deal with effectively per processor
- One resolution, one format, one chunk - that's one task
- What they are doing intelligently is breaking the chunks not based on timestamps but based on scenes to have seamless user experience.
- Based os scenes so you can make instead of 3 min thing, you can make it more fine grained 4 sec each, it's called a shot and you can collate shot, put them all together to create a scene.
- Prediction algorithm is pretty smart to understand if user is not watching with engaged mode and clicking fwd to see the movie, instead of giving the whole content, it gives only data to the user has asked for because they are probably clicking on different points in that buffer you get.
- On the other hand, if user if watching in engaged mode, so instead of sending just the part user has asked for, it redictively proactively fetches the future parts, gets onto your computer and shows it you.
- Amazon S3 is what Netflix uses to store that video content.
- This is where people store their static data meaning that you don't change that data.
- It's extremely cheap compared to a database.
- Netflix servers are usually in the U.S which means they are geographically concentrated and in a place like India which is really far, it's going to take lot of time to send the signal and receive it especially if it's video because there is lot of data which is going to be coming in and it's going to be slow.
- What Netflix did intelligently to extend the concept of caching and apply it to ISP's. When request comes to ISP for the movie, it looks for local cache say cache for Indian movies.
- Cache has been called as OpenConnect
- Lots of bandwidth saved
- Lots of time saved
- Much better user experience
- 90% of the Netflix traffic is taken care by these ISP boxes that they provide.
- W.r.t new content overnight job can be run to copy the new contents when there is less load on server for the requests.