Learn MapReduce with Playing Cards

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

КОМЕНТАРІ • 133

  • @kart00nher0
    @kart00nher0 8 років тому +13

    This is by far the best explanation of the MapReduce technique that I have come across. I especially like how the technique was explained with the least amount of technical jargon. This is truly an ELI5 definition for MapReduce. Good work!

  • @smushti
    @smushti 5 років тому +2

    An innovative idea to use a pack of cards to explain the concept. Getting fundamentals right with an example is great ! Thank you

  • @ekdumdesi
    @ekdumdesi 9 років тому +34

    Great explanation !! You Mapped the Complexity and Reduced it to Simplicity = MapReduce :)

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

    The only one I watched which can clearly introduce mapreduce to newbie

  • @mmuuuuhh
    @mmuuuuhh 8 років тому +44

    To wrap this up:
    Map = Split data
    Reduce = Perform calculations on small chunks of data in parallel
    Then combine the subresults from each reduced-chunk.
    Is that correct?

    • @jessetanderson
      @jessetanderson  8 років тому +2

      +mmuuuuhh Somewhat correct. I'd suggest buying the screencast to learn more about the code and how it works.

    • @alphacat03
      @alphacat03 8 років тому

      +mmuuuuhh merge-sort maybe?

    • @kemchobhenchod
      @kemchobhenchod 7 років тому +5

      divide and conquer

    • @BULLSHXTYT
      @BULLSHXTYT 6 років тому +1

      Map transforms data too

    • @dennycrane2938
      @dennycrane2938 6 років тому +2

      No no... Map = Reduce the Data, Reduce = Map the Data . .... ....

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

    Really good illustration.... really easy to understand for people as me that we are not computer experts.. thanks

  • @Useruytrw
    @Useruytrw 10 років тому +2

    Jesse may you get all SUCCESS and BLESSINGS

  • @djyotta
    @djyotta 9 років тому +2

    Very well done - not too slow, yet very clear and well structured.

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

    If I understand correctly, the mapper divvies up the data among nodes of the cluster and subsequently organizes the data on each node into key-value pairs, and the reducer collates the key-value pairs and distributes the pairs among the nodes.

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

      Almost. Hadoop divvies up the data, the mapper creates key value pairs, and the reducer processes the collated pairs.

  • @sukanyaswamy
    @sukanyaswamy 9 років тому +1

    Great presentation. The visualization makes it so much easier to understand.

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

    loved the idea. Now I understood how map reduce works. Thank you.

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

    what a great effort, i am astonished by your teaching skills.we need teachers like you.Thanks for your best explanation
    .

  • @rahulx411
    @rahulx411 9 років тому

    an ounce of example is better than a ton of precept! --Thanks, this was great!

  • @vscid
    @vscid 8 років тому

    and that's how you explain any technical concept. simple is beautiful!

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

    It was very nice. But I could not find the video that you showed the shuffling "magic part"

  • @menderbrains
    @menderbrains 5 років тому

    Great explanation! This is how a tutor should simplify the understanding! Thanks

  • @vivek3350
    @vivek3350 8 років тому

    Really liked your way of presentation....."Simple" and "Informative". Thanks for sharing!!

  • @abhishekgowlikar
    @abhishekgowlikar 10 років тому

    Nice video explaining the Map Reduce Practically.

  • @bit.blogger
    @bit.blogger 10 років тому +1

    6:16 got a question!
    Would you please elaborate more on those moving data? Since there is two separate reduce task on those two nodes how does two different reduce tasks combine together? How do we choose which cards move to which node?

    • @jessetanderson
      @jessetanderson  10 років тому +1

      That is called the shuffle sort. See more about that here www.inkling.com/read/hadoop-definitive-guide-tom-white-3rd/chapter-6/shuffle-and-sort.

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

      Does the actual data in the node moves or copies of the data is moved?

  • @doud12011990
    @doud12011990 9 років тому

    really cool one. It is always nice to come back to the basics. Thanks for that one

  • @LetsBeHuman
    @LetsBeHuman 5 років тому +1

    4:51 - - i'm kind of lost. so you said two papers as two sets of nodes.
    left is node1 and right is node2.
    then you said, "I have two nodes, where each node has 4 stacks of cards".
    I also understood that you are merging two varieties of cards in node1 and another two varieties of cards in node2.
    " a cluster is made of tens, hundreds or even thousands of nodes all connected by a network".
    so in this example, let's say two papers(nodes) are one cluster.
    the part I get confused is , when you say " the mapper on a node operates on that smaller part. the magic takes the mapper data from every node and brings it together on nodes all around the cluster. the reducer runs a node and knows it has access to everything with same key ".
    So if there are two nodes A and B that has mapper data, then the reducer part will happen on two other nodes C and D. I'm confused when you say "on nodes all around the cluster".

  • @logiprabakar
    @logiprabakar 9 років тому +1

    Wonderful, you have used the right tool(cards) and made it simpler. Thank you.
    Am i correct in saying, in this manual shuffle and sort, the block size is 52 cards where as in a node it would be 128.

  • @mgpradeepa554
    @mgpradeepa554 10 років тому

    The explanation is wonderful.. You made me understand things easily.

  • @prasann26
    @prasann26 10 років тому

    Wow.. You have made this look so simple and easy... Thanks a ton !!!

  • @rohitgupta025
    @rohitgupta025 9 років тому +4

    Just wow...very nicely explained

  • @ZethWeissman
    @ZethWeissman 8 років тому

    Might be a bit clearer to understand the advantage of this if instead of having the same person run the cards on each node sequentially and have two people do it at the same time. Or go further and have four people show it. Then each person can grab all the cards of the suit from each node and can sum their values up, again, at the same time. Show a timer showing how long it took for the one person to do everything on one node and the time of having all four running at the same time.

  • @IvanRubinson
    @IvanRubinson 7 років тому

    Well, that explains the interview question: How would you sort a ridiculously large amount of data?

  • @TheDeals2buy
    @TheDeals2buy 10 років тому

    Good illustration using a practical example...

  • @ahmedatallahatallahabobakr8712
    @ahmedatallahatallahabobakr8712 9 років тому

    Your explanation is majic! Well done

  • @kabirkanha
    @kabirkanha 4 роки тому +9

    Never trust a man whose deck of playing cards has two 7s of Diamonds.

  • @asin0136-y6g
    @asin0136-y6g 5 років тому

    Wonderful explanation ! Made it very simple to understand! Thanks a ton!

  • @moofymoo
    @moofymoo 9 років тому +48

    huge 1Tb file..
    anyone watching this in 2065?

  • @thezimfonia
    @thezimfonia 7 років тому

    That was very helpful Jesse. Thank you for sharing this!!

  • @nkoradia
    @nkoradia 7 років тому

    Brilliant approach to teach the concept

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

    amazing explanation! I love it. Huge Thanks!

  • @hazelmiranda8587
    @hazelmiranda8587 8 років тому

    Good to understand for a layman! So its quite crucial to identify the basis of the grouping i.e. the parameters based on which the data should be stored in each node.
    Is it possible to revisit that at a later stage?

  • @hexenkingTV
    @hexenkingTV 6 років тому +2

    So it follows mainly the principle of divide and conquer?

    • @jessetanderson
      @jessetanderson  6 років тому +2

      Following that analogy, it would be divide, reassemble, and conquer.

  • @LetsBeHuman
    @LetsBeHuman 5 років тому

    When you say nodes and clusters, does an input file of 1TB should definitely be run in more than one computer or we can install hadoop in a single laptop and virtually create nodes and clusters ?

  • @user-or7ji5hv8y
    @user-or7ji5hv8y 6 років тому

    best explanation of mapReduce. Thanks!

  • @gboyex
    @gboyex 6 років тому

    Great video with good explanation technique.

  • @tkousek1
    @tkousek1 7 років тому +1

    Great explanation!! worth a bookmark. Thank you sir!

  • @arindamdalal3988
    @arindamdalal3988 9 років тому

    really nice video and explain the terms in a simple way...

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

    What if the node with clubs and hearts breaks down during the reduce operation? Will data be lost? Or will the complete Map Reduce job be repeated using the replicated data?

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

      The data is replicated and the reduce would be re-run on a different node.

  • @piyushmajgawali1611
    @piyushmajgawali1611 4 роки тому

    I actually did this with cards.Thanks

  • @anandsib
    @anandsib 10 років тому +1

    Good Explanation with simple example

  • @AnirudhJas
    @AnirudhJas 5 років тому

    Thanks Jesse! This is a wonderful video! I have 2 doubts.
    1. Instead of sum, if it is a sort function, how will splitting it into nodes work? Because then every data point should be treated in one go.
    2. The last part on scaling, how will different nodes working on a file and then combining based on key, be more efficient than one node working on one file?
    I am new to this and would appreciate some guidance and help on the same.

    • @jessetanderson
      @jessetanderson  5 років тому +1

      1. This example goes more into sorting github.com/eljefe6a/CardSecondarySort 2. It isn't more efficient, but more scalable.

    • @AnirudhJas
      @AnirudhJas 5 років тому

      @@jessetanderson Thank you!

  • @AlexChetcuti
    @AlexChetcuti 7 років тому

    Thanks this really helped me for my exam !!

  • @tichaonamiti4616
    @tichaonamiti4616 10 років тому +6

    Thats wonderful ..... you are a gret teacher

  • @amirkazemi2517
    @amirkazemi2517 10 років тому

    greta video. why is there performance issues with hadoop however?

    • @jessetanderson
      @jessetanderson  10 років тому

      I'm not sure what you mean by performance issues.

  • @rogerzhao1158
    @rogerzhao1158 8 років тому

    Nice tutorial! Easy to understand

  • @mahari999
    @mahari999 8 років тому

    Superb. Thank you Jesse Anderson

  • @abdulrahmankerim2377
    @abdulrahmankerim2377 7 років тому +1

    Very useful explanation.

  • @rodrigoborjas7727
    @rodrigoborjas7727 4 роки тому

    Thank u very much for the explanation.

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

    Good illustration. 😃

  • @kart00nher0
    @kart00nher0 8 років тому

    IMO the key takeaway from the video is that MR only works when:
    a. There is one really large data set (e.g. a giant stack of playing cards)
    b. Each row in the data set can be processed independently. (e.g. sorting or counting playing cards does not require knowing the sequence of cards in the deck - each card is processed based on information on the face of card)
    To process real-world problems using MR, the data sets will need to be massaged and joined to satisfy the criteria listed above. This is where all the challenges lie. MR itself is the easy part.

    • @jessetanderson
      @jessetanderson  8 років тому

      +Subramanian Iyer agreed MR is difficult, but the understanding of how to use and manipulate the data is far more complex. This is why I think data engineering should be a specific discipline and job title. www.jesse-anderson.com/big-data-engineering/

  • @amandeepak8640
    @amandeepak8640 8 років тому +1

    Thank You sir for such a wonderful explanation. :-)

  • @sarthakmane2977
    @sarthakmane2977 4 роки тому

    dude, whats the name of that magic??

  • @lerneninverschiedenenforme7513
    @lerneninverschiedenenforme7513 10 років тому

    little bit long explanation. could be done faster (e.g. card-sorting). But after watching, you know what's happening. So all thumbs up!

  • @mudassarm30
    @mudassarm30 8 років тому

    spade clubs ... I think you used the wrong suite names for them :)

  • @ZFlyingVLover
    @ZFlyingVLover 5 років тому

    The 'scalability' of hadoop has to do with the fact that the data being processed CAN be broken up and processed in parallel in chunks and then the results can be tallied by key. It's not an inherent ability of the tech other than HDFS itself.
    Like most technology or jobs for that matter the actual 'process' is simple it's wading through the industry specific terminology that has makes it unnecessarily complicated. Hell you can make boiling an egg or making toast complicated too if that's your intent.

    • @jessetanderson
      @jessetanderson  5 років тому

      Sorry, you misunderstood.

    • @ZFlyingVLover
      @ZFlyingVLover 5 років тому

      @@jessetanderson I didn't misunderstand you. Your explanation was great.

  • @wetterauerbub
    @wetterauerbub 6 років тому

    Hi Jesse, can I use map reduce only on document-oriented DBs, or also e.g. on Graph databases?

    • @jessetanderson
      @jessetanderson  6 років тому

      Hessebub you can use it for both, but the processing Algorithms are very different between them.

    • @wetterauerbub
      @wetterauerbub 6 років тому

      Alright, thanks very much for answering & doing the video in the first place!

  • @grahul007
    @grahul007 9 років тому

    Excellent video explanation

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

    Great explanation!

  • @vigneshrachha8362
    @vigneshrachha8362 7 років тому

    Superb video....thanks a lot sir

  • @MincongHuang
    @MincongHuang 9 років тому +1

    Great video, thanks for sharing !

  • @Dave-lc3cd
    @Dave-lc3cd 4 роки тому

    Thanks for the great video!

  • @MuhammadFarhan-ny7tj
    @MuhammadFarhan-ny7tj 3 роки тому

    Which music is this in start of this video

  • @trancenut81
    @trancenut81 9 років тому

    Excellent explanation!

  • @patrickamato8839
    @patrickamato8839 10 років тому

    Great summary - thanks!

  • @gypsyry
    @gypsyry 5 років тому

    Best explanation. Thanks a lot

  • @sarthakmane2977
    @sarthakmane2977 4 роки тому

    great video by the way!!

  • @vincentvimard9019
    @vincentvimard9019 9 років тому

    just great explanation !

  • @thiery572
    @thiery572 6 років тому

    Interesting. Now I want to request a bunny comes out from a hat.

  • @abdellahi.heiballa
    @abdellahi.heiballa 4 роки тому +1

    my friend: i wish i had ur calm we having an exam tomorrow you watching how playing cards....

  • @devalpatel7243
    @devalpatel7243 5 років тому

    Hat's of man. very well understood

  • @hemanthpeddi4129
    @hemanthpeddi4129 4 роки тому

    awesome explanation super

  • @ajuhaseeb
    @ajuhaseeb 9 років тому

    Aiwa. Simply explained.

  • @irishakazakyavichyus
    @irishakazakyavichyus 6 років тому

    thanks! that is an easy explanation!

  • @Luismunoz-jf2zv
    @Luismunoz-jf2zv 9 років тому

    Now I get it, thanks!

  • @rrckguy
    @rrckguy 9 років тому

    Great lesson. Thanks..

  • @alextz4307
    @alextz4307 6 років тому

    Very nice, thanks a lot.

  • @guessmedude9636
    @guessmedude9636 6 років тому

    i like this technique nice keep it up

  • @bijunair3807
    @bijunair3807 9 років тому

    Good explanation

  • @周大鹏-o1j
    @周大鹏-o1j 9 років тому

    Great video

  • @SamHopperton
    @SamHopperton 7 років тому

    Brilliant - thanks!

  • @Nyocurio
    @Nyocurio 6 років тому +1

    Why did they come up with such a terribly unintuitive name as "MapReduce" ??? It's basically just "bin by attribute, then process each bin in parallel". BinProcess.

    • @jessetanderson
      @jessetanderson  6 років тому

      It's a well-known functional programming paradigm.

  • @__-to3hq
    @__-to3hq 5 років тому

    wow this was great

  • @sumantabanerjee9728
    @sumantabanerjee9728 6 років тому

    Easiest explanation.

  • @yash6680
    @yash6680 7 років тому

    awesome

  • @iperezgenius
    @iperezgenius 7 років тому

    Brilliant!

  • @gregrell2441
    @gregrell2441 8 років тому +5

    This is just a sales pitch

    • @jessetanderson
      @jessetanderson  8 років тому +2

      I think the description is pretty clear that it's an extended preview of the screencast.

  • @glennt1962
    @glennt1962 5 років тому

    This is a great example video without the accent to deal with.

  • @RawwestHide
    @RawwestHide 7 років тому

    thanks

  • @pamgg1663
    @pamgg1663 9 років тому

    excellent!!!

  • @niamatullahbakhshi9371
    @niamatullahbakhshi9371 8 років тому

    so nice

  • @covelus
    @covelus 7 років тому

    awesome

  • @varshamehra8164
    @varshamehra8164 5 років тому

    Cool

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

    like si vienes por riwb

  • @haroonrasheed9739
    @haroonrasheed9739 9 років тому

    Great

  • @hank-l6s
    @hank-l6s 6 років тому

    keep kinging