Twitter System Design on AWS | Microsoft, Google, Facebook Whiteboarding Interview Question

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

КОМЕНТАРІ • 66

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

    My Rocking Systems Design course is out now in Udemy! Limited time discounted link to get the course for $9.99 - www.udemy.com/course/rocking-system-design/?couponCode=LEARNSYSTEMDESIGN

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

      I cant watch it in corporate side of the udemy. is it not available to companies?

  • @TheElan5
    @TheElan5 2 роки тому +3

    Raj, your videos are incredibly helpful. You are masterful at breaking down complex technical requirements into readily understood concepts. I’ve learned a ton from just a few videos. Thank you for all of your help!

  • @madhivanandurai452
    @madhivanandurai452 Місяць тому

    Great and simple to understand

  • @kashmorakash4396
    @kashmorakash4396 3 роки тому +2

    Explanation is precise and simple. Please continue with such videos. Thanks for your effor

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

    youre like the only channel that makes information so digestible i really appreciate it

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

    Great video!
    When explaining when to generate timelines: "It will only create the timelines for the users who have been active in the last 10 hours". I'm assuming that this reduces the compute strain? But what happens when everyone on the US East Coast wakes up, everyone starts logging and looking at their Twitter feed at roughly the same time? The system is busy creating timelines for millions of users at the same time. How does this solution cope with such a situation?
    Some content suggestion/request for future videos - Compare/contrasts different way to implement a problems using different AWS technology. So for example so how you would implement something using EC2 vs. using Fargate vs. Lambda and contrast the trade-offs. Same for using Redis vs. Elasticache vs DAX, or using SNS vs. SQS, etc...

  • @amitparks
    @amitparks 3 роки тому +2

    Your biggest fan..keep sharing the knowledge 👍 ...More system design please 😁

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

    Raj, this is super simple. Have also bought your course.

  • @madhivanandurai452
    @madhivanandurai452 2 місяці тому

    Good One ..thanks

  • @Moccar
    @Moccar Рік тому +1

    Pretty funny you chose Elon Musk as the famous person way prior to him buying the company. Great video btw!

  • @ronnmv
    @ronnmv 3 роки тому +1

    Thanks Raj!! Let it flow....it's amazing how you turn this complex topics in to simple & understandable

    • @cloudwithraj
      @cloudwithraj  3 роки тому

      Thanks Rony for the kind words 🙏

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

    Nice video

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

    Great videos from you ! I am learning a lot of AWS !! Thanks a lot

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

    AMAZING

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

    Excellent presentation!

  • @lguevarae
    @lguevarae 3 роки тому +3

    Hi Raj! excellent video! I have a question about the EC2 and ASG part, what if instead of EC2 we use Step Functions with Lambda and EventBridge? could be an option? I mean having a Step Functions workflow that inserts the tweet on Redis and then to Kinesis. And also, could Redis be replaced with Dynamodb?

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

      Hi Luis, Raj mentions in the video that Redis can be replaced by DynamoDB and if the system needs even better performance than plain DDB, you can use DynamoDB Accelerator (DAX)

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

    Great video! TY!

  • @samhunk1227
    @samhunk1227 3 роки тому

    Thanks ! Excellent understanding .

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

    Brilliant Video. Many Thanks Raj

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

    Appreciate the great knowledge sharing course.

  • @indelible.M.
    @indelible.M. 2 роки тому

    You are amazing

  • @Neelu2023
    @Neelu2023 3 роки тому

    Thank you. This is very informative. Please do create more such videos. I am great fan of your videos

  • @mattborisov
    @mattborisov 3 роки тому

    Amazing episode! Thank you.

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

    Excellent thankyou

  • @machireddyshyamsunder987
    @machireddyshyamsunder987 3 роки тому

    Nicely explained Raj , Thank you so much

    • @cloudwithraj
      @cloudwithraj  3 роки тому

      Thanks Shyam for your support as always 🙏

  • @ahsanali-gm4ci
    @ahsanali-gm4ci Рік тому

    Raj thanks a lot for this video. As far as group messaging is concerned, we will use notification service with one queue. As for grouping message is same for every member so our message will pass by SQS and after SQS we will use a notification to every single group member. Is it right please suggest? Rest of the design would be the same.

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

    Like ur shirt bru👊

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

    We can use any graph db to store followers relationship if not why?

  • @sharathsachin001
    @sharathsachin001 3 роки тому

    Hey Raj Thanks for the awesome video... Smashed the like button as you said😃😃👍

    • @cloudwithraj
      @cloudwithraj  3 роки тому

      Thanks Sharath for your support as always 🙏

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

    Can you please make a video on Bandwidth pricing of AWS and other cloud providers?

  • @nah0221
    @nah0221 3 роки тому

    brilliant as usual .. Thank You!

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

    Perfect as usual!

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

    Hello Raj, thank you for the video. It was very informative. I am curious though. Is Twitter really using a kind of table as you described for the relationships; where a user's name appears in multiple rows to link that user to his or her followers? I had always assumed some kind of graph database based on what I read on data structures and algorithms.

  • @techsolutions123
    @techsolutions123 3 роки тому

    For mobile app deployment will need separate two builds ? One for apple other android app store right?

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

    Question: kms gets overloaded with high number of api calls, they cached it with S3 but how does it happen with other services. What is the throughput and how kms cops up with api calls

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

    How would the schema look like if you were to use DynamoDB? The keys need to be unique, so you could not have three rows of Tina unless you had some other partition key. Would you have some random-ish hashkey as the partition key and then have the Tina column be a GSI?

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

      Another great comment megabenman. Yes, the table needs to have both partition and sort key to make each record unique.

  • @mangeshxjoshi
    @mangeshxjoshi 3 роки тому

    Thank you , excellent video , very well explained , in simple language . really appreciated your video can we have some video on AWS Glue ETL tool ?

    • @cloudwithraj
      @cloudwithraj  3 роки тому

      Thanks Mangesh, yes planning on doing an AWS Analytics video in near future!

  • @mahmoudsakr3136
    @mahmoudsakr3136 3 роки тому

    Hi Raj, great videos, please continue , I like your content, but question: is iy sql or nosql DB?

    • @cloudwithraj
      @cloudwithraj  3 роки тому

      Hey Mahmoud, Redis is considered a NoSQL database, however it has limited capabilities to create keys and query using the keys. The primary reason to use Redis is to have really fast read/write ability.

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

    Why do we do not use EKS or Kubernetes in EC2 before Database rather than use Autoscaling and EC2? It will reduce Cost of Autoscaling and invocation of EC2?

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

    Would API Gateway scale enough to handle twitter-esque scale, or would you need ALB/NLB? The AWS Quotas docs state that AWS Gateway is limited by default to 10,000 RPS, but it can be increased upon request. Still, even at a 10x increase, I'm not sure 100k RPS would be enough.

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

      Great question megabenman! The limits are based on account/region. Beyond raising the limits, you also segregate the APIs on different region/API based on user location. Also CloudFront comes into play to cache certain contents without hitting the backend API. Generally it's a mix of ALB and API Gateway for different APIs. ALBs you can prewarm to handle high spokes for certain events (New Year), but it does cost you more.

  • @ITech2005
    @ITech2005 3 роки тому

    Where can I get that shirt? Employees only? Ive been looking for some more AWS gear because the stuff in the certification store is just...meh

    • @cloudwithraj
      @cloudwithraj  3 роки тому +1

      This is from a Serverless hackathon I participated in Imonous, don't think you can buy this one :(

  • @techsolutions123
    @techsolutions123 3 роки тому

    Thank you , assume full stack code ready, deployment of web twitter.com will be on container s but not server less ? As there's database?

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

    Like ur shirt bru👊