4 ECTS credits
100 u studietijd

Aanbieding 1 met studiegidsnummer 4016449EER voor alle studenten in het 1e semester met een verdiepend master niveau.

Semester
1e semester
Inschrijving onder examencontract
Mogelijk
Beoordelingsvoet
Beoordeling (0 tot 20)
2e zittijd mogelijk
Ja
Onderwijstaal
Engels
Faculteit
Faculteit Ingenieurswetenschappen
Verantwoordelijke vakgroep
Elektronica en Informatica
Onderwijsteam
Nikolaos Deligiannis (titularis)
Onderdelen en contacturen
18 contacturen Hoorcollege
50 contacturen Zelfstudie en externe werkvormen
Inhoud

Distributed computing refers to a large collaboration between networked processing units that allows for their processing capacity to be put at the service of a large problem.  Nowadays, many systems and applications are being distributed for a variety of reasons: fault-tolerance, processing performance, security as well as geographical spreading of the data or the problem requirements.

This course digs into the internals of distributed computing and storage architectures, with particular emphasis on algorithms and techniques that underlie today’s distributed computing systems. Topics addressed in this course include: (1) Introduction to the Cloud, including a view on the components and features in Today’s Cloud; (2) an overview of MapReduce, including the environment of MapReduce and Hadoop, as well as fundamental operations (such as matrix-vector and matrix-matrix multiplication) in MapReduce; (3) The Gossip protocol and its analysis; (4) The Consensus problem in distributed system models and the Paxos algorithm; (5) the problem of fault detection and solutions such as membership and the optimal failure detector; (6) overview of Peer-to-Peer systems (including Napster, Gnutella, FastTrack, BitTorrent, and Chord); (7) description of key-value stores (including well-known solutions such as Cassandra and HBase); (8) the problem of time and synchronization in distributed systems (including, Lamport / vector timestamps, and pulse-coupled oscillators); (9) the problem of distributed coding for information exchange between distributed agents.

Studiemateriaal
Handboek (Aanbevolen) : Distributed systems, Concepts and Design, Coulouris J., Dollimore J., Kindberg T., Blair G., 5de, Addison-Wesley, 9780273760597, 2011
Handboek (Aanbevolen) : Data-Intensive Text Processing with MapReduce, Synthesis Lectures on Human Language Technologies, Lin - Dyer - Hirst, Morgan and Claypool Publishers, 9781608453429, 2010
Digitaal cursusmateriaal (Vereist) : Slides, Course notes, 2017
Bijkomende info

The goal of this course is to introduce the fundamental concepts, methods, and technologies relevant for the design of distributed computing and storage systems as well as to present specific challenges associated with the distributed character of the processing task at hand. Distributed computing is an enabling technology for big data analytics, which is one of the most highly growing disciplines nowadays. The students will have the opportunity to follow a set of lectures and to practically use these concepts in the form of a project.

Leerresultaten

Algemene competenties

At the end of this course, the student will have developed a deep knowledge and understanding in state-of-the-art concepts and technologies in distributed computing. The student will be able to formulate, grasp, and analyse the fundamental designs in big data systems and to solve big data problems in the cloud using the MapReduce paradigm. The student will understand the basic technologies in distributed computing systems and will be able to use in practice the acquired knowledge in terms of a project. The student will be able to investigate how fundamental concepts and protocols such as Chord find application in today’s distributed systems.

This course contributes to the following programme outcomes of the Master in Applied Computer Sciences:

MA_A: Knowledge oriented competence

3. The Master in Engineering Sciences has in-depth knowledge and understanding of the advanced methods and theories to schematize and model complex problems or processes
4. The Master in Engineering Sciences can reformulate complex engineering problems in order to solve them (simplifying assumptions, reducing complexity)
8. The Master in Engineering Sciences can collaborate in a (multidisciplinary) team

MA_B:  Attitude

12. The Master in Engineering Sciences has a creative, problem-solving, result-driven and evidence-based attitude, aiming at innovation and applicability in industry and society

MA_C:  Specific competence

18. The Master in Applied Computer Sciences is able to design and use systems for efficient storage, access and distribution of digital information
19. The Master in Applied Computer Sciences has knowledge of and is able to use advanced processing methods and tools for the analysis of (big) data in different  application domains


 

Beoordelingsinformatie

De beoordeling bestaat uit volgende opdrachtcategorieën:
Examen Andere bepaalt 100% van het eindcijfer

Binnen de categorie Examen Andere dient men volgende opdrachten af te werken:

  • Exam met een wegingsfactor 1 en aldus 100% van het totale eindcijfer.

    Toelichting: The final grade is composed based on the following examinations: (1) the result of a final exam, which determines 70% of the final mark; and (2) the result of a project work, which determines 30% of the final mark.

Aanvullende info mbt evaluatie

The final exam will be a written evaluation, where the students will address theoretical questions and will also be asked to write pseudo-code that solves specific distributed computing problems. The project will examine the students’ involvement in the seminar sessions, evaluate their in-depth understanding of distributed computing algorithms, and assess their practical coding skills.

The final grade is composed based on the following examinations: (1) the result of a final exam, which determines 70% of the final mark; and (2) the result of a project work, which determines 30% of the final mark.

 

Toegestane onvoldoende
Kijk in het aanvullend OER van je faculteit na of een toegestane onvoldoende mogelijk is voor dit opleidingsonderdeel.

Academische context

Deze aanbieding maakt deel uit van de volgende studieplannen:
Master of Applied Sciences and Engineering: Applied Computer Science: Standaard traject (enkel aangeboden in het Engels)
Master in Applied Sciences and Engineering: Computer Science: Artificial Intelligence (enkel aangeboden in het Engels)
Master in Applied Sciences and Engineering: Computer Science: Multimedia (enkel aangeboden in het Engels)
Master in Applied Sciences and Engineering: Computer Science: Software Languages and Software Engineering (enkel aangeboden in het Engels)
Master in Applied Sciences and Engineering: Computer Science: Data Management and Analytics (enkel aangeboden in het Engels)