Using Software Visualization for Supporting the Teaching of MapReduce
The increasing number of cybersecurity threats we are facing nowadays is fueling the development of new detection and contrast techniques based on the analysis of Big Data. In such a setting, the MapReduce paradigm has quickly become the de facto standard for carrying out this processing. This has l...
        Saved in:
      
    
          | Published in | Network and System Security Vol. 11058; pp. 349 - 360 | 
|---|---|
| Main Author | |
| Format | Book Chapter | 
| Language | English | 
| Published | 
        Switzerland
          Springer International Publishing AG
    
        01.01.2018
     Springer International Publishing  | 
| Series | Lecture Notes in Computer Science | 
| Subjects | |
| Online Access | Get full text | 
| ISBN | 9783030027438 3030027430  | 
| ISSN | 0302-9743 1611-3349  | 
| DOI | 10.1007/978-3-030-02744-5_26 | 
Cover
| Summary: | The increasing number of cybersecurity threats we are facing nowadays is fueling the development of new detection and contrast techniques based on the analysis of Big Data. In such a setting, the MapReduce paradigm has quickly become the de facto standard for carrying out this processing. This has led to a surge in the number of job offerings involving this skill. Moreover, we are experiencing a significant increase in the number of computer science courses covering this paradigm as well as its most popular implementations, Spark and Hadoop.
In this paper, it is presented a solution for supporting the teaching of MapReduce through the use of software visualization. The proposed solution has two main goals. The first is to help students in understanding how the MapReduce paradigm succeeds in solving a complex problem by decomposing it in simpler sub problems, where each of these is solved by means of map and/or reduce operations. The second is about the capability of showing how an input dataset is partitioned in blocks and processed in parallel by the different computing units of a distributed computing system. In both cases, the use of software visualization techniques with proper graphical metaphors helps the students in understanding what is going on, by providing them with a graphical representation that, on a side, describes how the considered algorithm works on an input dataset while, on the other side, illustrates the speed-up achieved thanks to the distributed approach. | 
|---|---|
| ISBN: | 9783030027438 3030027430  | 
| ISSN: | 0302-9743 1611-3349  | 
| DOI: | 10.1007/978-3-030-02744-5_26 |