Design YouTube | System Design

Поділитися
Вставка
  • Опубліковано 12 гру 2024

КОМЕНТАРІ • 34

  • @deepjyotkaurbindra
    @deepjyotkaurbindra Рік тому

    Hi, great video, just wanted to add that we should break the video into chunks before sending it to the transcoding service so that the transcoding workers can work in parallel for different chunks.

  • @akaRong
    @akaRong 2 роки тому +1

    Thank you so much for this video. Been waiting for this kind of vid.

    • @irtizahafiz
      @irtizahafiz  2 роки тому +1

      Awesome! If you have any feedback, please let me know.

  • @piyushkumar2437
    @piyushkumar2437 Рік тому

    Very comprehensive explanation. Please keep up the good work 👍

    • @irtizahafiz
      @irtizahafiz  Рік тому

      Thank you! Glad you found it valuable.

  • @vijaybabaria3253
    @vijaybabaria3253 2 роки тому +1

    Thanks again, love your channel. If and when you get a chance, suggestion for next system design 1). distributed message queue and 2). distributed cache.. Thanks for all your hard work

    • @irtizahafiz
      @irtizahafiz  2 роки тому +1

      No problem : )
      Sounds good. I will add these to my list. Hope you enjoy the future videos. Will be coming up soon I promise haha

  • @johny962
    @johny962 8 місяців тому

    Thank you very much, I learned a lot 👍👍👍👍👍👍

  • @조바이든-r6r
    @조바이든-r6r 2 роки тому

    I really like your complex topic which gonna interviewer might ask

  • @cwmayank
    @cwmayank 4 місяці тому

    please add url for video notes.

  • @IMSOURAVM
    @IMSOURAVM 8 місяців тому

    Brilliant content!! Could you please make a video on google docs system design?

  • @sergiim5601
    @sergiim5601 2 роки тому

    Thanks for the great videos! I've got a question about the Transcoding Service. It seems like its only job is upon receiving S3 URL of an original video to publish a message to Kafka. If so, why don't API servers publish messages to Kafka directly and everything else stays the same ? It's not an expensive process from what I understand. Is there something else I don't get ?

    • @irtizahafiz
      @irtizahafiz  2 роки тому

      Kafka+Celery works too. I think I mention that in one of my other videos.

  • @JardaniJovonovich192
    @JardaniJovonovich192 2 роки тому

    Shouldn't there be multiple transcoded video URL's for a single video? like for each video format i.e. mp4, mvi e.t.c we should support multiple resolutions like 720p, 360p e.t.c, right? However, as per your metadata DB design, I see only a single column? Do you add multiple rows for each video wherein each row has a separate transcoded video URL for each bitrate + format?
    If that is the case, then writes will also be huge, so having a wide columnar DB like Cassandra would make more sense than MySQL, is what I feel. What say?

    • @irtizahafiz
      @irtizahafiz  2 роки тому

      Hi! That's a really good point.
      I totally agree that we will need to support multiple resolutions and formats. I thing a relational table would still work given the write throughput won't be too high.
      Transcoding will mostly occur on video upload time.
      We can always shard our relational table based on video_id or something if it's getting too large.
      Cassandra would also work here, but I think a simple MySQL table would do the job too.

  • @HozefaJodiawala
    @HozefaJodiawala 2 роки тому

    Why not do the copyright check before transcoding? All resources spent on transcoding are wasted if the video is taken down.

  • @melk48111
    @melk48111 Рік тому

    Shouldn't streaming the video come from CDN as we are storing the transcoding videos in S3 (CDN) ?

    • @irtizahafiz
      @irtizahafiz  Рік тому

      Yes. I didn't dive into a lot of details, CDN being one of them.

  • @mansimishra7089
    @mansimishra7089 Рік тому

    Hey ! Very Nice Explanation :) Can you please provide the used docs in the video?

    • @irtizahafiz
      @irtizahafiz  Рік тому

      For the notes, I recovered several of them. If you want them, please subscribe to irtiza.io. I am using that list to keep track of whoever wants the notes now and moving forward.

  • @arihantjain3274
    @arihantjain3274 Рік тому

    Why use Kafka instead just trigger transcoding lambda when S3 put object

  • @melk48111
    @melk48111 Рік тому

    Love your videos. Is there a link to the design ?

    • @irtizahafiz
      @irtizahafiz  Рік тому

      Unfortunately, most of the PDF links expired. You can consider subscribing to my newsletter at irtiza.io. Soon I will send out the ones I could recover.

  • @manichaitanya926
    @manichaitanya926 2 роки тому

    @Irtiza Amazing videos and awesome details. Can you please upload the PDF Notes like it is given for other design questions.

    • @irtizahafiz
      @irtizahafiz  2 роки тому

      Hi! Unfortunately, I don't have the notes PDF anymore. I started adding a PDF link of the notes starting a few videos after this one. Sorry :(

  • @GoodLuck-dv2zu
    @GoodLuck-dv2zu 2 роки тому

    Why do we need Transcoding Service if all heavy prcosses are done by workers? Why Api servers can not push direct to KAFKA?

  • @veerendrashukla
    @veerendrashukla 2 роки тому

    How does server know what all ids need to be saved against the user? In the facebook we know friends and that helps in storing the newsfeed for the users. Here in this design, if someone uploads the video, how do we know this video id should be also stored for other users?

    • @irtizahafiz
      @irtizahafiz  Рік тому

      You can use concepts from the Facebook design.
      The UA-cam equivalent of "Friends" is subscribers. So you can push videos to the subscribers "feed" whenever a channel they follow uploads a video.

  • @krishan1172
    @krishan1172 2 роки тому

    Can you please attach the pdf as well?

    • @irtizahafiz
      @irtizahafiz  2 роки тому

      Hi! Sorry I don't have the PDF of this anymore.

  • @zymasethecatalyst
    @zymasethecatalyst 2 роки тому +1

    OG

  • @chrishabgood8900
    @chrishabgood8900 5 місяців тому

    feature.