Amazon System Design | Flipkart System Design | System Design Interview Question

แชร์
ฝัง
  • เผยแพร่เมื่อ 21 พ.ย. 2024

ความคิดเห็น • 342

  • @ritukothariable
    @ritukothariable 4 ปีที่แล้ว +59

    Thanks for sharing this video. Really appreciate the clarity of thought in your explanation and flow of the design.

    • @codeKarle
      @codeKarle  4 ปีที่แล้ว +1

      Glad you enjoyed it!

  • @AmanGarg95
    @AmanGarg95 3 ปีที่แล้ว +46

    I worked at Flipkart and the architecture described here provides good insights into what we do. Good one. We're more on HBase than Cassandra though.

    • @codeKarle
      @codeKarle  3 ปีที่แล้ว +3

      That's great to hear!!

    • @rahulsinghai3033
      @rahulsinghai3033 2 ปีที่แล้ว +1

      @codekarle how can we implement the discount that Flipkart provides that vary time to time

    • @Dhundlahai
      @Dhundlahai 2 ปีที่แล้ว

      Can i get your contact info ???

    • @nehasht2
      @nehasht2 2 ปีที่แล้ว +1

      @@rahulsinghai3033 rule engine 🤔

  • @abhimanyunagpal3086
    @abhimanyunagpal3086 3 ปีที่แล้ว +27

    I have watched multiple videos on system design but the content you have is exactly what is needed to crack the interviews. You are among the best on youtube in terms of content !

    • @codeKarle
      @codeKarle  3 ปีที่แล้ว +9

      Thanks Abhimanyu!!
      Glad to hear this.
      Do spread a word about us amongst your friends. It helps everyone :)

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      I want to know one thing. In which kind of use cases item database mongo-db will be used? as We have already search engine DB for searching items, inventory ? how inventory service and elastic search talk to each other

  • @АнастасияБелова-ч4т
    @АнастасияБелова-ч4т 3 ปีที่แล้ว +29

    I work at Ozon (Russian equivalent of Amazon) and yes, our architecture is quite similar

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว +2

      Do you have idea about How item service communicate with Inventory service ?

    • @trishulcurtis1810
      @trishulcurtis1810 9 หลายเดือนก่อน

      Instead of Item service, you can just use inventory service I think@@aashishsawant3150

  • @FranciscoGomez-tw1ii
    @FranciscoGomez-tw1ii 3 ปีที่แล้ว +2

    I have my first interview tomorrow and i was so scared, thanks to your videos i no longer feel like that and i feel like im actually capable of showing of what i learned so far in my career tomorrow. THANK YOU

    • @codeKarle
      @codeKarle  3 ปีที่แล้ว +1

      All the best for your interviews!

  • @philomath20
    @philomath20 3 ปีที่แล้ว +9

    It's not like I am trying to make some comparisons here but I usually prefer watching multiple videos for the same design topic and I can easily say that I find Sandeep's tutorials the most comprehensive and lucid at the same time. Awesome job there Sandeep.

    • @codeKarle
      @codeKarle  3 ปีที่แล้ว

      Thanks Apoorv!

  • @vadirajjahagirdar9342
    @vadirajjahagirdar9342 3 ปีที่แล้ว +3

    This is at next level. I am making notes of all your videos and recently cracked a company. My best wishes to you brother :) :) God bless you :) :)

    • @randomguy4822
      @randomguy4822 4 หลายเดือนก่อน

      Bro I am also making notes , can we connect on linkedin

  • @RicardoBuquet
    @RicardoBuquet ปีที่แล้ว +1

    Having worked in a super large system for 11 years (Groupon) I give this overview a 5 stars.

  • @amareshsat
    @amareshsat 3 ปีที่แล้ว +62

    The improvement what I see in your videos is you keep everything drawn already on the board rather drawing it on the go. That would have been good as to know how you think through the whole system and how you approaching step by step. Also one more thing is the diagram could be more organized so when you talk you run through any flow it should be one functional flow from start to end rather than picking random components.

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      Anyone has idea about How item service communicate with Inventory service ?

    • @neurocat6453
      @neurocat6453 ปีที่แล้ว +1

      That would make some of his 1-hour videos 3-hours length though... When everything is prepared he is able to cover more aspects and go more in-depth in shorter time. Anyway, I am not sure if we will see new videos from him.

  • @harshitjain1
    @harshitjain1 ปีที่แล้ว

    One of the best system design playlist out there. So underrated!

  • @MakrandGurav
    @MakrandGurav 2 หลายเดือนก่อน

    I've always found Sandeep's videos very detailed and info worthy. I like how he gets to the point and gets it going from there.
    Thank you!

  • @tyapka
    @tyapka 4 ปีที่แล้ว +5

    I really liked the breakdown on how to lock items in inventory and how to deal with expired orders.

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      Do you have idea about How itemService communicate with InventoryService ?

  • @lokesh2800
    @lokesh2800 3 ปีที่แล้ว +1

    This is the very comprehensive and clear explanations of the concepts, I have seen so many videos in platforms like udemy, linkedin learning, Oreilly but I found this explanation and design best for the ecommerce platform.

  • @asg3hb
    @asg3hb 2 ปีที่แล้ว +10

    Great video as always. I found myself liking the videos in which you draw the system in real time. It gives a much better idea of a system being built to solve multiple levels of problems step by step. It also keeps the viewer more focused on the piece being worked on.

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      Do you have idea about How ItemService communicate with InventoryService ?

  • @astrostudent2302
    @astrostudent2302 3 ปีที่แล้ว +7

    Videos are good and intensive. Also please show rough estimates - traffic estimate, memory estimate, storage estimate etc

  • @juhisweet16
    @juhisweet16 2 ปีที่แล้ว

    still go through your videos regularly to brush up/prep for interviews.
    thank you so much for these

  • @deepakshukla991
    @deepakshukla991 3 ปีที่แล้ว +1

    Buddy your knowledge level and skills are unmatchable. Keep making these videos.

    • @codeKarle
      @codeKarle  3 ปีที่แล้ว

      Thanks Deepak! Do spread the word about the channel :)

  • @sagarsaumyaprusty7681
    @sagarsaumyaprusty7681 2 ปีที่แล้ว

    This has been a clear vision for the process with multiple DB depending on the what type of data we are getting saved.
    It helped me a lot. I have designed one solution. If you have linkedin or similar can we connect.
    Just for a clarification, like MongoDB, Cassandra and Analytics tool can't we use any ERP based backend like SAP, ARIBA for purchase flow to make it more easy and smoother. These already have best Load balancing. I am a SAP consultant and looking for the similar solution that i have seen for multiple industry in my project experience.

  • @deepakchhabra5932
    @deepakchhabra5932 4 ปีที่แล้ว +1

    Vivid explanation. I would add that where you run the purge and archive what I have seen a heavy use of asynch flows so some kind of queue in between which would delete the data through processing service but dont talk directly with historical service, instead generate all these order events and put them into a queue and the listener on the other end would talk to historical service and finish the rest of the process. Since purge may pull millions of records so expecting archival service to deal with order processing and historical at the same time may cause frequent failures. Very nice content. Thank you.

    • @deepakchhabra5932
      @deepakchhabra5932 4 ปีที่แล้ว +1

      One more point - when redis sends the expiry callback to order taking service we can also put a check there to first check the status of the order. if order is placed then ignore the request. Deleting from Redis when payment is confirmed is also good but safeguarding at both ends would be nice in case we fail to delete the record from redis.

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      I want to know one thing. In which kind of use cases item database mongo-db will be used? as We have already search engine DB for searching items, inventory ? how inventory service and elastic search talk to each other

    • @sudhanshukumar-yu7fj
      @sudhanshukumar-yu7fj 5 หลายเดือนก่อน

      @@aashishsawant3150
      mongo-db is used when you have unstructured data which can have varying attributes yet you need to query them with complex params. For example, you may want to find a shirt of size M and color crayon and has a chinese collar etc.
      how inventory service and elastic search talk to each other: They don't have to.

  • @7hjoseph
    @7hjoseph 2 ปีที่แล้ว

    Best system design video from all what I have watched. Thanks for making this!

  • @debs1991
    @debs1991 ปีที่แล้ว +1

    You speak to common man! Really knowledge booster. Thanks you :)

  • @dorjitshering775
    @dorjitshering775 3 ปีที่แล้ว

    It was such a clear explanation. I couldn't have understood it more from anywhere else. Thank you so much for the content!!

  • @ooogabooga5111
    @ooogabooga5111 2 ปีที่แล้ว

    Thank you so much for this, also pls make more videos. The quality of your talk is just too good not to be passed on to others.

  • @syedmusa8527
    @syedmusa8527 2 ปีที่แล้ว +1

    Crystal clear thought process and explanation too. Thanks for the excellent video.

  • @warnercooler4488
    @warnercooler4488 3 ปีที่แล้ว

    Best tutorial I have seen so far on this topic. Thank you so much!

  • @vaishnavivel3500
    @vaishnavivel3500 3 ปีที่แล้ว

    Brilliant and clear explanation.. especially appreciate the reasoning behind the DBs etc.. thanks for sharing

  • @rishabhgoel1877
    @rishabhgoel1877 2 ปีที่แล้ว

    first person who doesn't teach just for interview purpose but in general how systems are designed, really appreciate you :)

  • @rupas4761
    @rupas4761 ปีที่แล้ว

    Thanks for explanation .In all your videos you explain it so simple even the complicated topics with attention to details👍

  • @monishchhadwa777
    @monishchhadwa777 9 หลายเดือนก่อน

    You deserve a like, subscribe share.
    Honestly, explained such a complex system in a very short time precisely and clearly

  • @abrarpapa
    @abrarpapa 3 ปีที่แล้ว +1

    You have explained the CAP theorem so easily which was really challenging to understand. Kudos!!! Keep up the good work.

  • @TheCodeThoughts
    @TheCodeThoughts 2 ปีที่แล้ว +4

    I think Wish List and Cart service should not be associated with Search service rather it can be directly connected to user pages once he/she is logged in.

  • @srogirala
    @srogirala 2 ปีที่แล้ว

    All your videos are excellent . Only issue is you are standing infront of the board which contains the architecture. You can stand on the side of the board so that viewers get a clean view of the architecture diagram.

  • @vibhorpareek8179
    @vibhorpareek8179 2 ปีที่แล้ว

    The videos are spot on. Usually on other videos there are ambiguity in design. Your design stresses on what exactly needs to be done :) Great content!

  • @quangluong5413
    @quangluong5413 2 ปีที่แล้ว

    I really like how you go into the details of different components - amazing work!

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      I want to know one thing. In which kind of use cases item database mongo-db will be used? as We have already search engine DB for searching items, inventory ? how inventory service and elastic search talk to each other

  • @vaibhavkumar903
    @vaibhavkumar903 2 ปีที่แล้ว +1

    Suggestion - Please start with a brute force way to design a system, it gives more confidence to one

  • @kushalkhandelwal6267
    @kushalkhandelwal6267 4 ปีที่แล้ว +2

    Awesome video. Really like your style of explaining the design. Seems very natural and incremental in approach and understanding.

    • @codeKarle
      @codeKarle  4 ปีที่แล้ว

      That's great to hear!! Thanks for the kind words :)

  • @kunalsahu3903
    @kunalsahu3903 2 ปีที่แล้ว

    Superb explanation, Thank you so much for nice detailing, plss keep on posting more in this era. Thanks

  • @nuralitechie9534
    @nuralitechie9534 2 ปีที่แล้ว

    Thank you. Very quality design, with most of components, edge case cover.
    Best system design material with real life issue/functionality.
    One feedback, it would be great if you can show yr whiteboard with diagram without you in between so that one can take screen shot and keep it for future reference.
    Thank you very much.

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      I want to know one thing. In which kind of use cases item database mongo-db will be used? as We have already search engine DB for searching items, inventory ? how inventory service and elastic search talk to each other

  • @SumanSaurabh
    @SumanSaurabh 4 ปีที่แล้ว +3

    This is awesome, very granular. I love your videos.
    Suggestions:
    1. I am not able to take a perfect screenshot of the whiteboard, if you can show video like it's the only thing in the screen for like 3 to 4 seconds, it will be very helpful.
    2. Checkpoints in the video, so that we can directly go to the specifics.
    Very much thanks Sandeep for creating such great videos.

    • @codeKarle
      @codeKarle  4 ปีที่แล้ว +2

      Thanks!!
      You can get some of the screen pics over here, in the individual descriptions: www.codekarle.com/
      Not everything is there, but you'll still get some diagrams.
      Checkpointing is a good idea, we'll try to do that.

  • @Dhindsa99
    @Dhindsa99 3 ปีที่แล้ว +6

    Thanks buddy for such a nice explaination. Since this is Amazon and hence global presence, I had few questions which may be asked in an interview
    1. How is the user service Db synched , e.g. user is in India however now he went to US and access US website. Will there be a master Db which will have info about all Users or how will the system sense where to fetch user info from ?
    2. If we say the DBs of all regions will sync with some Master DB, how will this sync happen ?
    3. Will there be a Load Balancer infront of REDIS (wherever its used ) ?
    4. Infact there can be a LB infront of every service component, if not then how are the requests routed as there could be multiple servers running that service ( e.g. Cart Service) ?
    Could you ( or any other user) please help to provide some guidance on this ? Thanks in advance.

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      I want to know one thing. In which kind of use cases item database mongo-db will be used? as We have already search engine DB for searching items, inventory ? how inventory service and elastic search talk to each other

    • @sudhanshukumar-yu7fj
      @sudhanshukumar-yu7fj 5 หลายเดือนก่อน

      Thoda khud se bhi doondh le bhai

  • @FrankMaruf
    @FrankMaruf 2 ปีที่แล้ว

    That's really awesome. Thanks, sir for sharing this video with us. Love from Bangladesh .

  • @domnicsatish
    @domnicsatish 3 ปีที่แล้ว

    Thank you so much for this video! Appreciate if you also share a transcript of the video in the description. It'll help keeping it handy for reading through the key concepts.

  • @asifiqbal2184
    @asifiqbal2184 ปีที่แล้ว

    It's very nice and clean approach. Thanks for all your effort. i would like if you can create a catalog management system video which can cover the master data management for product as admin.

  • @Cricket4rLife
    @Cricket4rLife 3 ปีที่แล้ว

    Very nice one! I literally liked and slept at the same time. Appreciate it 😎😎

  • @Omniman2
    @Omniman2 3 ปีที่แล้ว

    So many use cases covered, awesome design and explanation. Thanks mate!

  • @nasreenustad7658
    @nasreenustad7658 4 ปีที่แล้ว +2

    Very clear and well explained all the features.. thanks for sharing, I appreciate your efforts.
    Could you please make a video on how to design Database schema for e-commerce app in details?

  • @architgupta4087
    @architgupta4087 3 ปีที่แล้ว +11

    @CodeKarle Nice explanation.
    Since the order, payment, and inventory are managed by separate microservices, we may need distributed transactions here. Thinking about cases like we reduced the inventory but the order service failed to persist the order. It would be great to discuss this issue along with different distributed transaction algorithms (Paxos, 2PC, 3PC, Saga etc) in your next video.

    • @rujhanarora7892
      @rujhanarora7892 3 ปีที่แล้ว

      Exactly my thoughts. As Sql doesn't provide distributed transactions, the statement made in video is little misleading

    • @preetigupta5565
      @preetigupta5565 2 ปีที่แล้ว

      Right..Also they whole order taking journey is synchronously spanning through multiple microservices. Would that not block the customer?

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      Archit, Do you have idea about How ItemService communicate with InventoryService ?

    • @sudhanshukumar-yu7fj
      @sudhanshukumar-yu7fj 5 หลายเดือนก่อน

      Correct, SAGA is way forward here. 2PC and 3PC are quite slow in real world, besides making this process synchronized suffers from late response to the client. A better way in SAGA suggests that we provide an immediate response let the SAGA complete. Once completed or rolled back then confirm the order.

  • @SkiesTribune
    @SkiesTribune ปีที่แล้ว

    I really enjoyed the way you explain things...simple and effective👏🔝
    My kind regards from Egypt.

  • @iitmvaibhav
    @iitmvaibhav 4 หลายเดือนก่อน

    crisp explanation and covered all aspects

  • @utubesud
    @utubesud 4 ปีที่แล้ว

    Sandeep, Excellent .... Thanks very much...THis is a very intuituve design I have ever
    seen...its pretty much covers almost all details....

  • @박종선-v8i
    @박종선-v8i 3 ปีที่แล้ว

    Wow.. e-Commerce system is so complex..

  • @chhaviparasher2917
    @chhaviparasher2917 5 หลายเดือนก่อน

    Great content and well-organized flow in the video. Thanks a lot for creating this video.

  • @ZeroInfinityCoder
    @ZeroInfinityCoder 3 ปีที่แล้ว +2

    Best explanation. Though i have one doubt for "USER PURCHASE FLOW"
    Instead of "ORDER TAKING SERVICE" and "ORDER PROCESSING SERVICE" can't we just have one "ORDER SERVICE" (which will do 2 things take orders and view live orders) as it seems too much of separation of concern OR is it done to segregate READ and WRITE traffic?
    Also let "ARCHIVAL SERVICE" talk to "OMS MYSQL DB" for getting orders which are in TERMINAL State.
    What are your thoughts?

  • @arijitghosh3090
    @arijitghosh3090 3 ปีที่แล้ว

    Thanjs for sharing this...however I feel that instead of havign everything drawn out if you had drawn each component at a time will be been better. It would have made clear your thought process and will have been less overwhelming

  • @rupeshmukherjee852
    @rupeshmukherjee852 4 ปีที่แล้ว +2

    Sandeep... design a Recommendation System and designing a distributed key value store would help... Possible to take these up in ur upcoming videos?? BTW.. every video is awesome Sandeep.. best System design videos I have seen so far... very clear and not over the top, very precise yet very detailed.. Awesome work Sandeep..

  • @manveersingh5822
    @manveersingh5822 2 ปีที่แล้ว +1

    sir, why have you stopped uploading videos, we all are enjoying your knowledge so much! Please can you upload more of such videos, it will mean a lot to all of us.

  • @ri_rs
    @ri_rs 4 ปีที่แล้ว +3

    Great explanation and well organized content flow in the video. Nicely covered many components of system design. Thanks a lot for creating this video. .

  • @idrishsorathiya440
    @idrishsorathiya440 2 ปีที่แล้ว

    Nice content and clear explanation. Only one thing that was make me panic during whole video was sound quality. Voice is too low.

  • @prashanttripathi3957
    @prashanttripathi3957 3 ปีที่แล้ว +2

    Its great explanation of system. I want to know one thing. In which kind of use cases item database mongo-db will be used? as We have already search engine DB for searching items, inventory & Order databases for transactions and Cassandra for historical based queries.

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      Prashant, I have also the same question. If you got answer could please explain to me ?

  • @erichaymer5130
    @erichaymer5130 4 ปีที่แล้ว +3

    Great video. Can you please do a follow up video covering OMS system built top of this architecture. Can you also discuss some tradeoff and improvement which can be done. Ex: scalability wise? Thanks.

    • @codeKarle
      @codeKarle  4 ปีที่แล้ว +1

      Sure, we'll try to make that.

    • @erichaymer5130
      @erichaymer5130 4 ปีที่แล้ว +2

      @@codeKarle thank you. Can't wait to see your follow in-depth design. As always great content. One suggestion: can you also discuss future improvements and tradeoffs of the design and architecture for upcoming videos. I think, that's important to understand as well. Ex: If we go serverless by using lambda, stepfunction, etc

  • @availkrishmytube
    @availkrishmytube 3 ปีที่แล้ว +1

    Great job! There was clarity right throughout

  • @sumitbabel5415
    @sumitbabel5415 3 ปีที่แล้ว

    You are amazing, superb explanation and with excellent pace

  • @igorburilo3937
    @igorburilo3937 2 ปีที่แล้ว

    Thanks for such detailed and good explanation

  • @HarkiratSaluja
    @HarkiratSaluja 3 ปีที่แล้ว

    This is a gem of a video. Learnt a lot. Thank you

  • @AmitKumar-gm8wl
    @AmitKumar-gm8wl 3 ปีที่แล้ว

    it is really impressive. Helped me a lot in system design.
    One request is that please make a video on movie ticket booking system (BookMyShow)

  • @VY-zt3ph
    @VY-zt3ph 2 หลายเดือนก่อน

    This is not just a system design video. It as entire course on how to divide a usecase into a microservices arhchitecture.

  • @rumtek3559
    @rumtek3559 ปีที่แล้ว

    Just 1 suggestion, instead of taking these big designs, you can choose smaller things and make a series of videos, then 1 video to just stitch it. The issue I see is that we are going into some things in deep whereas some other important things seem to be missing

  • @ssandeepdesai7
    @ssandeepdesai7 3 ปีที่แล้ว

    Beautiful & clear explanation. Thanks for this video !

  • @holatechm
    @holatechm 3 ปีที่แล้ว

    This is what I was looking for, really helpful video bro, thanks a lot for your effort

  • @srikid100
    @srikid100 2 ปีที่แล้ว

    I really like your videos! Super informative and easy to understand. Thank You!

  • @animeshsharma902
    @animeshsharma902 2 ปีที่แล้ว

    Great video as always. Thanks for this as it help developing thought process to architecting solution. One thing, no detail as about the Inventory service like from where it data get populated. As we have item service to keep product details. It will great if you put your thought on this to understand the flow. Inventory service is one of the service.

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      I want to know one thing. In which kind of use cases item database mongo-db will be used? as We have already search engine DB for searching items, inventory ? how inventory service and elastic search talk to each other

  • @foodfan4512
    @foodfan4512 4 ปีที่แล้ว +1

    Very well explained! This is a large scale platform. If we have a medium size platform. Can we use Rabbitmq instead Kafka? If we use rabbitmq what are some changes we need to make to the Architecture?

    • @codeKarle
      @codeKarle  4 ปีที่แล้ว +1

      Architecturally nothing would change. You can use rabitMQ instead of Kafka if you scale is low, but if you are not using any extra features that rabbit MQ provides I would still recommend to go with Kafka

    • @bowang1825
      @bowang1825 4 ปีที่แล้ว

      @@codeKarle why do you prefer Kafka over rabbit MQ?

    • @rohanagarwal5512
      @rohanagarwal5512 4 ปีที่แล้ว

      @@bowang1825 Multi-consumer and persistence, and also scale as you already mentioned.

  • @SmartEngineers
    @SmartEngineers 3 ปีที่แล้ว

    Great explanation. It's really worthful to watch.

  • @shivangitomar5557
    @shivangitomar5557 3 ปีที่แล้ว

    Wow! This is very well explained. Thanks!!

  • @siddharthbagai6459
    @siddharthbagai6459 ปีที่แล้ว

    Great video as always ! very clear thanks ! only one point of improvement if you can use a better mic as sound clarity is not the best

  • @girlwhocodesandlifts
    @girlwhocodesandlifts 3 ปีที่แล้ว

    Thanks for the quality of information you provide in your videos. I have below queries wrt Wishlist and cart services being tied to Search Service.
    1) If a user adds an item to cart, the add to cart flow won't go through Search Service, right?
    2) Also, user can add items from homepage or from some other flow (e.g. affiliate links) as well, so it shouldn't be tied to Search Service.

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      I want to know one thing. In which kind of use cases item database mongo-db will be used? as We have already search engine DB for searching items, inventory ? how inventory service and elastic search talk to each other

    • @ZeroInfinityCoder
      @ZeroInfinityCoder ปีที่แล้ว

      @@girlwhocodesandlifts
      yes i was also thinking the same
      it should be directly thru some other service like cart, wishlist service

  • @anastasianaumko923
    @anastasianaumko923 ปีที่แล้ว

    Thank you for your work, great job 😌

  • @anushrih.v5515
    @anushrih.v5515 3 ปีที่แล้ว

    This design was so descriptive! Thanks for sharing!

  • @PawanSharma-le6hk
    @PawanSharma-le6hk 2 ปีที่แล้ว

    Thanks for your awesome videos, really appreciate the effort. Please create a video for the Google Drive kind of service also.

  • @vivekchand19
    @vivekchand19 2 ปีที่แล้ว

    Hi Sandeep, Thanks for the amazing videos. They have been very helpful. Would love to see more videos coming like Designing Dropbox, Pastebin, Web Crawler etc & system design patterns.

  • @rajatahuja4720
    @rajatahuja4720 4 ปีที่แล้ว +2

    1) I think Wishlist and cart service flow should not go via Search Service. What do you think? 2) Spark ml data should get stored in database ( druid/cassandra) to get consumed by recommendation service

    • @codeKarle
      @codeKarle  4 ปีที่แล้ว

      You're right, the APIs to the services you meantioned would be independent anyway, just that the wishlisting/adding to cart usually is done by the users post search results are shown. That's why it follows the search results in the user journey. Functionally, they are totally independent.
      The recommendation logic can run as a Spark job which then then store the data in any datastore through Recommendation Service. The same service would then consume the data written in that data store to power various recommendation based functionalities.

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      I want to know one thing. In which kind of use cases item database mongo-db will be used? as We have already search engine DB for searching items, inventory ? how inventory service and elastic search talk to each other

  • @safarnama4597
    @safarnama4597 3 ปีที่แล้ว

    Thanks for nicely explanation of each component in detils.

  • @sumondutta1101
    @sumondutta1101 4 ปีที่แล้ว +1

    A feature I would love discussed is:
    Order tracking feature with current delivery time estimation

  • @varunkumarsrivastava921
    @varunkumarsrivastava921 4 ปีที่แล้ว +1

    Very nice explanation. Appreciate your effort. Have a question. In your design I see multiple services sharing a database. In general, it's not considered a good practice to share a database across services. Is there any specific reason/justification for sharing databases?

    • @codeKarle
      @codeKarle  4 ปีที่แล้ว +2

      Usually I prefer to use one service-one DB model.
      Some exception to it are the usual Search flow, where I usually keep one service to support the queries of search and other service to support the data population. Intent there is to make sure I am able to scale them independently, incase the search traffic surges but the inflow remains the same.
      A few times I have done it in other videos as well, where one service is writing data(tweets for example) and other service is used for reading. Again the reason is to scale the read and write flows independently.
      Another place where I do it is where everyone is writing to Hadoop or Kafka, which I believe is not a problem.
      Can you please let me know which specific scenario you are referring to here so that I might be able to share the justification for that scenario.

  • @AI_For_Scientists
    @AI_For_Scientists 2 ปีที่แล้ว

    great video, Just the right amount of information, thank you!

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      I want to know one thing. In which kind of use cases item database mongo-db will be used? as We have already search engine DB for searching items, inventory ? how inventory service and elastic search talk to each other

  • @nandyad
    @nandyad ปีที่แล้ว

    This is really so much helpful

  • @sridharkulkarni9210
    @sridharkulkarni9210 2 ปีที่แล้ว

    Amazing videos on system design. Thanks very much. Love your style of explanation. Are you planning to create any videos on System design of cloud storage?

  • @prajaktakhose9511
    @prajaktakhose9511 2 ปีที่แล้ว +2

    Amazing video ! I had one query regarding the first LB. Should API gateway be used for first LB shown in diagram which will take requests from users?

    • @coolchippy
      @coolchippy 2 ปีที่แล้ว +1

      He has abstracted that. It should be API gateway and load balancer behind that.

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      @@coolchippy , Do you have idea about How ItemService communicate with InventoryService ?

    • @aashishsawant3150
      @aashishsawant3150 ปีที่แล้ว

      @@coolchippy want to know one thing. In which kind of use cases item database mongo-db will be used? as We have already search engine DB for searching items, inventory & Order databases for transactions and Cassandra for historical based queries.

    • @coolchippy
      @coolchippy ปีที่แล้ว

      @@aashishsawant3150 Item database is for storing item details, description, images, url, etc. Each item will be different so no-sql is the best way to store. Everytime you open an item page on the portal, ItemService will be used to fetch item details.

    • @coolchippy
      @coolchippy ปีที่แล้ว

      @@aashishsawant3150 ItemService is for fetching item details and InventoryService is for checking if item quantity is available to fulfill the order.

  • @subhasisroy9710
    @subhasisroy9710 2 ปีที่แล้ว

    Very helpful video. Thank you so much.

  • @nikitasinghchauhan6239
    @nikitasinghchauhan6239 4 ปีที่แล้ว +1

    Great video and thank you for explaining all the important functionalities.🙂

  • @ganeshkudva817
    @ganeshkudva817 4 ปีที่แล้ว +3

    Thanks your videos are great. Can you do a video on Coupon Management & Donation website system design's too ?

    • @codeKarle
      @codeKarle  4 ปีที่แล้ว +1

      Thanks!! Coupon Management is on the TODO list. We'll try to do that soon :)

  • @parambharti7095
    @parambharti7095 ปีที่แล้ว

    Awesome explanation.

  • @psk2166
    @psk2166 5 หลายเดือนก่อน

    Thank you for sharing, I've learnt a lot from you :)

  • @MarimuthuSA
    @MarimuthuSA 3 ปีที่แล้ว

    Great content but easy to understand, Thanks codeKarle.

  • @mahletlulseged4858
    @mahletlulseged4858 5 หลายเดือนก่อน

    great explanation! thanks a lot

  • @ankita4priya
    @ankita4priya 4 ปีที่แล้ว

    Great design and awesome explanation of each component

  • @namratasukanya8424
    @namratasukanya8424 4 ปีที่แล้ว

    Video is really very helpful. But one suggestion if you can little bit slowdown while describing. :)

  • @YashRaithatha1989
    @YashRaithatha1989 3 ปีที่แล้ว

    awesome ! Thanks for explaining it with so much clarity.

  • @koikahi
    @koikahi 3 ปีที่แล้ว

    Awesome pace and thought process. Missing critical Pricing service?

  • @sushantkumar8903
    @sushantkumar8903 4 ปีที่แล้ว

    Simple yet very efficient