How NETFLIX onboards new content: Video Processing at scale 🎥

Sdílet
Vložit
  • čas přidán 31. 05. 2024
  • 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.
    00:00 Problem Description
    00:32 Video formats and resolutions
    03:18 Chunk processing
    05:52 Storage
    06:19 OpenConnect for video caching
    10:13 Summary
    Looking to ace your next interview? Try this System Design video course! 🔥
    interviewready.io
    With video lectures, architecture diagrams, capacity planning, API contracts and evaluation tests. It's a complete package.
    References:
    / high-quality-video-enc...
    / optimized-shot-based-e...
    / video
    / stream
    / keystone-real-time-str...
    media.netflix.com/en/company-...
    System Design Playlist: • System Design for Begi...
    You can follow me on:
    LinkedIn: / gaurav-sen-56b6a941
    Instagram: / applepie404
    Quora: www.quora.com/profile/Gaurav-...
    Twitter: / gkcs_
    External content used:
    Fast and Furious 7 (Car chase scene)
    Boone Loves Video: • 🌎Create 3D PATH ANIMAT...
    Sacred Games (Available on Netflix)
    Johnny English Reborn (What's it called?)
    Netflix Logo

Komentáře • 539

  • @adityatripathi1904
    @adityatripathi1904 Před rokem +53

    I believe there is a variation to Gaurav's understanding on open-connect caching mechanism. A new uploaded video DOES NOT goes directly to the caching server, instead they are resolved to a 'a small Netflix DB replica" in that region, which in-term populates the caching layer for new videos or most frequently accessed videos. The distinction is important because otherwise the design is assumed to directly populate OC CDNs, which is not the case. So for example, if a viewer in Australia wants to stream a non-cached US content:
    Instead of directing all the Netflix traffic through under-sea cables, Netflix copies the video file (transcoded) from US-based storage to a storage location in Australia once during off-peak hours. Once the video has reached the continent, it’s copied to all the Open Connect servers present in the ISP networks.
    This is not to point out a flaw in the video, just a clarification.

    • @gkcs
      @gkcs  Před rokem +9

      Thank you for this amazing clarification 😁

    • @adityatripathi1904
      @adityatripathi1904 Před rokem +2

      @@gkcs I am glad. Keep making fun content😄

  • @Nikhilajayk
    @Nikhilajayk Před 4 lety +60

    Content apart , the new animations that you've added are really nice. Extra efforts are appreciated!
    Keep em coming !

  • @manishramesh5446
    @manishramesh5446 Před 4 lety

    Wow, excellent video. Love your unique style of breaking down the topics in chunks and explaining them neatly. Keep them coming.

  • @nehaambasta1191
    @nehaambasta1191 Před 4 lety +5

    Man, you know how to teach with fun! I must say presentation and video editing is very well done in your videos.

  • @himanikumar7979
    @himanikumar7979 Před 3 lety

    Blown by the simplicity you explained such a complex topic!

  • @akashthoriya
    @akashthoriya Před 4 lety +2

    holy shit! Just fall for these videos; Thank you from bottom of my heart! Please make more video on this topic!

  • @adityapatange8
    @adityapatange8 Před 4 lety +4

    What a beast! Loved your reference to Amazon S3 out of nowhere! 😎✔️

  •  Před 2 lety

    The material you have in this playlist is gold! I did not expect to learn so much from it. Thanks a lot!

    • @gkcs
      @gkcs  Před 2 lety

      You're welcome!

  • @walaaelsayed8764
    @walaaelsayed8764 Před 4 lety +2

    Very helpful and simple for anyone who is preparing for software design interview. Your way of explaining is interesting and funny 😊

  • @amarchhabra2175
    @amarchhabra2175 Před 4 lety +3

    Bro - Thanks for the great video! Learned a lot. Just subscribed. Keep the great content coming!

  • @Iamjohnsmithindia
    @Iamjohnsmithindia Před 4 lety +66

    Keywords = CDN , predictive content delivery , content pre-fetch and so on...

    • @vinayshrivastava266
      @vinayshrivastava266 Před 4 lety +6

      Yes Content Delivery Network plays a really important role if the geographic location of physical server is far and also I think what these OTTs would be doing is what we are getting in recommendation might be based on geo location rather than your watch history , this way if one guy from ur location has seen some movie it gets cached to a CDN and then when u request for the same content , since it comes in ur recommendation its extremely fast

  • @PyjamaLama
    @PyjamaLama Před 4 lety

    Wow this is sweet! Super smart solution to the issues of video streaming, will be interesting to see where it is improved upon in the future too!

  • @syjaf6615
    @syjaf6615 Před 4 lety

    Awesome man! Simple and to the point. The best kind of online content.

  • @ShivamRaj-si5wt
    @ShivamRaj-si5wt Před 3 lety

    1:23 AWESOME GAURAV, perfect example of what you are explaining, Huge respect bro

  • @sumankumarsubudhi
    @sumankumarsubudhi Před 4 lety

    Whoa!!! Thank you so much for making such unique and great content videos ;)

  • @bhageshpant4985
    @bhageshpant4985 Před 4 lety

    Hi Gaurav, thanks for the video. Impeccable. Keep doing the great work!!

  • @sushruttabakade6088
    @sushruttabakade6088 Před 4 lety

    You have the most unique content on CZcams, man. No bs, pure knowledge. Keep going.

  • @ayasswain
    @ayasswain Před 4 lety +26

    Another informative video from you. Nice explanation. Thanks. Just wanted to add something on the caching part. Many websites take help of CDN providers like Akamai to do the caching on behalf of them. The CDN providers have the required infrastructure across the globe wherein they have placed their caching servers in most of the countries.

    • @gkcs
      @gkcs  Před 4 lety

      That's interesting, thanks!

  • @shubhankar915
    @shubhankar915 Před 4 lety +17

    Showing Gupt in local popular movie would make Booby Deol really Proud. Savage AF Gaurav! :D

  • @kennethpchang
    @kennethpchang Před 4 lety

    I'm very impressed! Great explanation! I just subscribed! Keep going!

  • @uneq9589
    @uneq9589 Před 4 lety

    As i have some experience in this area, i would like to say that you delivered crisp content on the same. Good job!

    • @gkcs
      @gkcs  Před 4 lety +1

      Thank you!

  • @AnikBanerjeeliveforfun
    @AnikBanerjeeliveforfun Před 4 lety +34

    Moral : Steal that Open Connect Box

  • @INCREDIBLEGUYOFINDIA
    @INCREDIBLEGUYOFINDIA Před 4 lety

    Have been working in this arena for a while now, you got everything correct man, other stuff you post usually goes over my head because I haven't dabbled in a lot of those things but for once, felt nice to already know what you were gonna say. Haha.

    • @gkcs
      @gkcs  Před 4 lety

      Thanks! Your replies on the comments are excellent btw :D

  • @algoseekee
    @algoseekee Před 4 lety +11

    It's amazing to see how Guarav improves the quality of his content, and I can tell you, guys, as a newbie tech CZcamsr, it's a big deal. Keep it up, bro! ;-)

    • @gkcs
      @gkcs  Před 4 lety +1

      Thanks Victor!

  • @tirthdoshi7463
    @tirthdoshi7463 Před 4 lety

    Gaurav, I can't tell how interesting this video was ! Thanks a lot ! I totally enjoyed learning this ! Keep making more such videos ! :)

  • @mrskwrl
    @mrskwrl Před 4 lety +4

    Love the energy. Your videos are great.

  • @vishnuthamizharasan
    @vishnuthamizharasan Před 4 lety +3

    To be honest learned something useful today, and willing to learn from you more like this kinda of topic!

  • @andriidanylov9453
    @andriidanylov9453 Před rokem

    Thank You for sharing. Very nice details and very good description

  • @KomalSingh-bh8zr
    @KomalSingh-bh8zr Před 4 lety +1

    Thanks for this wonderful insight on the engineering side of Netflix, looking forward to more system design videos.

  • @charanteja4632
    @charanteja4632 Před 4 lety +49

    Please do some lectures on docker internals like Cgroups, namespaces, union capable file systems

  • @shubhamtech89
    @shubhamtech89 Před 2 lety +2

    Champion presentation. Just wanted to see a graphical representation of the adaptive bit rate ladder through Netflix's eyes.

  • @Rishabh199494
    @Rishabh199494 Před 2 lety

    I just started watching your videos. Your content is Amazing.

  • @anupammangal8990
    @anupammangal8990 Před 3 lety +41

    Hey Gaurav,
    I was just wondering how the Open Connect or CZcams Red boxes are any different from the long existing concept of CDN (Content Delivery Network). The only change is, being big companies they have the money and resources to create their own personal CDNs and brand them which is kind of building your own house instead of renting one. Is there something I am missing here ?

    • @gkcs
      @gkcs  Před 3 lety +12

      They are very similar, yes.

    • @samiles171094
      @samiles171094 Před 2 lety

      I was having the same question as how these Oppen connect boxes are different from CDNs.

  • @MukundPadale
    @MukundPadale Před 4 lety

    Awesome bro ..!! Simple and very informative.. loved it .. keep it up 👍

  • @neeshespieces
    @neeshespieces Před 3 lety +1

    You’re awesome. Thanks 😁😍 this was so helpful

  • @prnk139
    @prnk139 Před 2 lety +1

    great efforts thanks a lot ! i remember my childhood days after seeing the GUPT poster! :-)

  • @shraddhapandey5442
    @shraddhapandey5442 Před rokem

    That was a nice one !
    Thanks for the video.

  • @pvrcs
    @pvrcs Před 4 lety +5

    Can you explain some of the advanced concepts of video streaming too? For eg., Bandersnatch? I wonder how Netflix is providing conditional streaming of video chunks based on user selection.

  • @siddheshmadiwale4352
    @siddheshmadiwale4352 Před 4 lety

    that's pretty interesting concept... very well explained 👏👏.....

  • @vk21563
    @vk21563 Před 4 lety +6

    ISP cache is really interesting, wondering how they have handled security on top of it across multiple geography??

  • @tejassardana6266
    @tejassardana6266 Před 4 lety +152

    Don't be surprised if you hit 500K subscribers by the end of 2019. Your content quality is skyrocketing.

    • @gkcs
      @gkcs  Před 4 lety +4

      Thank you!

    • @DiaryOfMuhib
      @DiaryOfMuhib Před 3 lety +19

      @@talesara74 It's system design and it's not for everyone to understand, what did you expect? People mainly use this channel for technical system design interviews.

    • @pratsway961
      @pratsway961 Před 2 lety +5

      You said that from your perspective. But the sad reality is People really don't like good contents😅😂. They can watch a 3hrs movie, but couldn't watch this type videos for 10mins😑

    • @letsrock7354
      @letsrock7354 Před rokem +1

      Gaurav I love your content and soon I guess will be joining your InterviewReady platform...Please offer me some special discount bhai 😍

    • @vinayak186f3
      @vinayak186f3 Před rokem +2

      It's almost 2023 and he still has 488k 🥲

  • @sankalparora9374
    @sankalparora9374 Před rokem

    Short, simple and full of interesting concepts. Thanks!

    • @gkcs
      @gkcs  Před rokem

      Thank you!

  • @toabhijeetsingh
    @toabhijeetsingh Před 4 lety +4

    The content of this video was very dense. The breather at 5:29 was very much wanted :-). You have very good audience engaging skills. Good Luck !!

  • @meghakashyap1303
    @meghakashyap1303 Před 4 lety

    Thank you Gaurav for the content . Hope to see many more useful content .

  • @SuboptimalEng
    @SuboptimalEng Před 4 lety

    Very detailed. Great work!

  • @mrinalinimusic
    @mrinalinimusic Před 4 lety

    Your videos are pure delight to watch !

    • @gkcs
      @gkcs  Před 4 lety

      Thank you!

  • @pradipkumarkarnavat1205

    I was waiting for this video, awesome

  • @kajalpareek8291
    @kajalpareek8291 Před 4 lety

    Very nice explained and made it interesting. Will be waiting for more good system design question.

  • @videoguy640
    @videoguy640 Před 3 lety +1

    That bit at the beginning was hilarious 😂

  • @user-zu2uh8zg6p
    @user-zu2uh8zg6p Před 17 hodinami +1

    Thanks for your describtions

  • @logicboard7746
    @logicboard7746 Před 2 lety

    Thank you for your reading on this topic...this is enlightening (at least for me)

  • @luis96xd
    @luis96xd Před 3 lety

    Excellent video, well explained!

  • @amitjain-eth
    @amitjain-eth Před 2 lety

    Nice and depth knowledge bro!

  • @anushreejain98
    @anushreejain98 Před 4 lety

    must say u made it really Interesting with editing :P and great content!

    • @gkcs
      @gkcs  Před 4 lety +1

      Thank you!

  • @khalilladha
    @khalilladha Před 4 lety

    Great, Nicely explained !!!

  • @manirajsivasubbu4623
    @manirajsivasubbu4623 Před 3 lety

    Nice explaination, Thank you so much.

  • @djlyons90
    @djlyons90 Před 2 lety

    This was a very informative video! Awesome job.

  • @dicksonrobert1492
    @dicksonrobert1492 Před 4 lety

    Thank you for the explanation

  • @gouravraghuwanshi
    @gouravraghuwanshi Před 4 lety +1

    Superb explanation bro

  • @galfas09
    @galfas09 Před 4 lety

    Great video ! Thanks for sharing

  • @amraboeleneen2221
    @amraboeleneen2221 Před 4 lety

    real effort here, good job mate

  • @rohscx
    @rohscx Před 4 lety

    Good job explaining!!

  • @jayeshmali9240
    @jayeshmali9240 Před 2 lety

    Great presentation skills and content🔥🔥🔥

  • @dhruvenvora
    @dhruvenvora Před 2 lety

    Great breakdown!

  • @ankitbagga5713
    @ankitbagga5713 Před 4 lety

    Thanks Gaurav. I am not an engineer but always wanted to get some resource to learn the concepts. I would love to see more of your videos and on advance concepts.

    • @gkcs
      @gkcs  Před 4 lety

      Thanks Ankit!

  • @muthaiahpalaniappan8009

    As always one another brilliant content

  • @CodeMode9313
    @CodeMode9313 Před rokem

    Paaji ek dum kamaal ka video hai ...even understoodable for non cs

  • @scenescentral3004
    @scenescentral3004 Před 2 lety

    Fantastic explanation

  • @arsalalam5998
    @arsalalam5998 Před 4 lety

    Brief and precise.. Nice.

  • @lzone24
    @lzone24 Před 4 lety +1

    Gaurav it would b great if you can go deeper into Netflix design and technology choices done by Netflix team.
    Overall a nice video 👍

  • @sudiptdabral5590
    @sudiptdabral5590 Před 4 lety

    Great content always!

  • @vibekdutta6539
    @vibekdutta6539 Před 4 lety

    Happy Teachers Day Sir! U taught me a lot! I really appreciate that!

    • @gkcs
      @gkcs  Před 4 lety +1

      Thank you!

  • @anjalibelani5101
    @anjalibelani5101 Před 3 lety

    This is great work Gaurav. Thank you for this!

  • @lala7701
    @lala7701 Před 4 lety

    I just love your system design videos.

    • @gkcs
      @gkcs  Před 4 lety

      Thanks 😁

  • @heysupratim
    @heysupratim Před 4 lety +1

    Great video. Something I would like to point out.
    AVI MP4 - these are video containers. H.264 is a codec. Not a big thing to worry about in the grand scheme of a system design overview video like this but just wanted to point out

    • @gkcs
      @gkcs  Před 4 lety

      Thanks!
      That's a good point 😁

  • @shivnandantiwari7489
    @shivnandantiwari7489 Před 3 lety

    You're a gem you should have a teaching startup like byjus

  • @prankurverma8967
    @prankurverma8967 Před 4 lety

    So well explained 🤟

  • @saadabdulhameed6699
    @saadabdulhameed6699 Před 4 lety

    That's just awesome
    Keep it up

  • @inderdhami2001
    @inderdhami2001 Před rokem

    Very informative!

  • @Theartsygalslays
    @Theartsygalslays Před 2 lety

    Very well explained, thank you, Gaurav!

    • @gkcs
      @gkcs  Před 2 lety

      Thanks Veronica 😁

  • @vikramrajput76
    @vikramrajput76 Před 4 lety

    Really helpful man!

  • @nadeemahmednady
    @nadeemahmednady Před 4 lety +2

    Video -> Fragmentation -> ABR -> DASH + HLS -> Packaging -> Cache On CDN -> Play

  • @iiit5
    @iiit5 Před 4 lety

    Good explanation!

  • @yog2915
    @yog2915 Před 2 lety +1

    Bro u are great am a 14+ software engineer really appreciate ur content

  • @mdaamirkhan5901
    @mdaamirkhan5901 Před 4 lety

    Nice work.

  • @ayanhalder4514
    @ayanhalder4514 Před 4 lety +3

    Hi Gaurav,
    You mentioned that instead of segmenting based on timestamp, Netflix segments based on scenes that are a collection of shots. Do you have any understanding of how they divide each scene? Taking your car scene as an example: how does Netflix know from which point to which point (or to be more abstract: how many shots need to be collated) to create that scene and to download it in a single go?

    • @nemanja.tonic87
      @nemanja.tonic87 Před rokem +4

      It's called Shot Transition Detection. Here is a starting point for researching it: en.wikipedia.org/wiki/Shot_transition_detection

  • @Cricketming
    @Cricketming Před 4 lety

    Great content.. keep up the good work..

  • @aadeshsharma0001
    @aadeshsharma0001 Před 2 lety +1

    this isp cache thing is just simply amazing,

  • @sumitlahiri209
    @sumitlahiri209 Před 4 lety

    Awesome Video. Very good explanation. Video content caching is not an easy job. The video is really good.

    • @sumitlahiri209
      @sumitlahiri209 Před 4 lety

      Software Architecture is the most important thing today. No matter how much you you improve on ML algos or buy hardware etc... It is the archtecture that defines quality and reliability. How you connect components together using a good deisgn tactic and make each component work flawlessly by the deisgn pattern matters the most. It is archtecture everywhere. The fact that you make videos on it is really a good thing. Developers today must understand the imporatnce of it. It is not just writing code but many other things too.You are doing a great job by making such videos.

  • @ashishrana7519
    @ashishrana7519 Před 4 lety

    Bhai saab.. Creative content...

  • @debagnikroy9450
    @debagnikroy9450 Před 4 lety

    OMG!!!! the opening😂😂

  • @kashyapsreview
    @kashyapsreview Před 3 lety +1

    Thanks for the great info
    I wonder why I like Netflix more than any other OTT

  • @GauravJain108
    @GauravJain108 Před 4 lety

    Thank you!

  • @raghavgarg1258
    @raghavgarg1258 Před 4 lety

    Great Sir,

  • @eyalpery8470
    @eyalpery8470 Před 2 lety

    Thanks!!

  • @Richard_GIS
    @Richard_GIS Před 4 lety

    Awesome!!

  • @sarvarthmonga5764
    @sarvarthmonga5764 Před 2 lety

    Gupt yrr, haha Very wonderfully explained Thanks for that

  • @deepakpai0796
    @deepakpai0796 Před 4 lety

    Thats a really great explanation. Thanks

    • @gkcs
      @gkcs  Před 4 lety

      Thank you!

  • @amitupadhyay6511
    @amitupadhyay6511 Před 2 lety

    Not gonna lie, you got me in first second, sorting in O(n) lol

  • @akshaygagrani2927
    @akshaygagrani2927 Před 2 lety +1

    Loved this video please create one on Google sheets also.