MSc: Big Data Technologies And Analytics.previous version
Big Data Technologies and Analytics
- Course name: Big Data Technologies and Analytics
- Course number: N/A
Prerequisites
Course Characteristics
Key concepts of the class
- Advanced distributed data organization
- Advanced distributed data processing
What is the purpose of this course?
Nowadays companies need to manage vast amounts of data on a daily basis. Storing, sorting, accessing and analyzing obtaining synthetic information is considered one of the great challenges of the 21st century and and being effective in this may make the difference between success and failure. In order to gain a competitive advantage, Big Data and Analytics professionals are able to extract useful information from data and increase the Return Of Investments. In this course, students will be exposed to the key technologies and techniques, including R and Apache Spark, in order to analyze large-scale data sets and uncover valuable business information.
Course Objectives Based on Bloom’s Taxonomy
What should a student remember at the end of the course?
- Understanding of big data applications.
- Algorithms for the statistical analysis of big data
- Fundamental principles of predictive analytics
What should a student be able to understand at the end of the course?
By the end of the course, the students should be able to ...
- How to process batch data
- How to process stream data
- Advanced design of distributed architectures
- Advanced design of distributed algorithms
What should a student be able to apply at the end of the course?
By the end of the course, the students should be able to ...
- Write a program for batch processing
- Write a program for stream processing
- Design distributed processing pipelines
- Desing distributed algorithms
Course evaluation
Proposed points | ||
---|---|---|
Labs/seminar classes | 20 | 30 |
Interim performance assessment | 30 | 30 |
Exams | 50 | 40 |
If necessary, please indicate freely your course’s features in terms of students’ performance assessment.
Grades range
Proposed range | ||
---|---|---|
A. Excellent | 90-100 | |
B. Good | 75-89 | |
C. Satisfactory | 60-74 | |
D. Poor | 0-59 |
If necessary, please indicate freely your course’s grading features.
Resources and reference material
- Slides and material provided during the course.
- F. Provost and T. Fawcett. Data Science for Business. O’Reilly, 2013
- Matthew North. Data Mining for the Masses, Second Edition: with implementations in RapidMiner and R. CreateSpace Independent Publishing Platform, 2012
- Tom White. Hadoop: The Definitive Guide. O’Reilly Media, Inc., 2012
- Seema Acharya and Subhashini Chellappan. Big data and analytics. WileyIndia, 2016
Course Sections
The main sections of the course and approximate hour distribution between them is as follows:
Section | Section Title | Teaching Hours |
---|---|---|
1 | Introduction | 2 |
2 | File systems and resource managers | 8 |
3 | Batch Processing | 8 |
4 | Stream Processing | 8 |
5 | Analytics | 4 |
Section 1
Section title:
Introduction
Topics covered in this section:
- What is Big Data
- Characteristics of Big Data
- Technologies
- Virtualization and cloud computing
What forms of evaluation were used to test students’ performance in this section?
|a|c| & Yes/No
Development of individual parts of software product code & 0
Homework and group projects & 0
Midterm evaluation & 0
Testing (written or computer based) & 1
Reports & 0
Essays & 0
Oral polls & 0
Discussions & 1
Typical questions for ongoing performance evaluation within this section
- Describe the 6 Vs
- Describe the technologies to support big data
Typical questions for seminar classes (labs) within this section
- Design the structure of a cloud architecture for big data
- Give examples of the 6 Vs in real systems
Test questions for final assessment in this section
- Design the structure of a cloud architecture for a specific analytics type
- Give examples of the 6 Vs in real systems
Section 2
Section title:
File systems and resource managers
Topics covered in this section:
- HDFS
- YARN
What forms of evaluation were used to test students’ performance in this section?
|a|c| & Yes/No
Development of individual parts of software product code & 1
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 0
Essays & 0
Oral polls & 0
Discussions & 1
Typical questions for ongoing performance evaluation within this section
- Describe the characteristics of the different nodes of HDFS
- How files and blocks are managed
- Describe the resource manager
- Describe the lifecycle of an application
- Describe and compare the scheduling approaches
Typical questions for seminar classes (labs) within this section
- Configure a HDFS cluster
- Build a HDFS client
- Use a HDFS command line
- Configure YARN
- Evaluate the overall performance of YARN
Test questions for final assessment in this section
- Configure a HDFS cluster with some specific replication approaches
- Build a HDFS client
- Evaluate the performance of a specific configuration
- Compare the different schedules
Section 3
Section title:
Batch Processing
Topics covered in this section:
- Distributed batch processing
- MapReduce model
- Applications
- Tasks management
- Patterns
What forms of evaluation were used to test students’ performance in this section?
|a|c| & Yes/No
Development of individual parts of software product code & 1
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 0
Essays & 0
Oral polls & 0
Discussions & 1
Typical questions for ongoing performance evaluation within this section
- Describe the MapReduce model
- Describe tasks management
- Describe patterns of usage
Typical questions for seminar classes (labs) within this section
- Solve with MapReduce a specific problem
- Implement a usage pattern
Test questions for final assessment in this section
- Describe the advantages and disadvantages of the MapReduce model
- Solve a task designing the solution using MapReduce
- Solve a task designing the solution using a composition of usage patterns
Section 4
Section title:
Stream Processing
Topics covered in this section:
- CAP theorem
- Distributed storage and computation
- Distributed Stream Processing
- Usage patterns
What forms of evaluation were used to test students’ performance in this section?
|a|c| & Yes/No
Development of individual parts of software product code & 1
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 0
Essays & 0
Oral polls & 0
Discussions & 1
Typical questions for ongoing performance evaluation within this section
- Analyze the CAP theorem
- Define the kinds of data storage available
- Characteristics of stream processing
- Describe the usage patterns
Typical questions for seminar classes (labs) within this section
- Build a program to solve a problem with stream processing
- Interact with a NoSQL database
Test questions for final assessment in this section
- Identify problems and solutions related to the CAP theorem
- Compare solutions with batch and stream processing approaches
- Design a system using a NoSQL database
Section 5
Section title:
Analytics
Topics covered in this section:
- Architecture
- Use cases
- SparkML
- GraphX
What forms of evaluation were used to test students’ performance in this section?
|a|c| & Yes/No
Development of individual parts of software product code & 1
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 0
Essays & 0
Oral polls & 0
Discussions & 1
Typical questions for ongoing performance evaluation within this section
- Features of SparkML
- Features of GraphX
Typical questions for seminar classes (labs) within this section
- Write a program using SparkML
- Write a program using GraphX
Test questions for final assessment in this section
- Extend the SparkML library with a custom algorithm
- Extend the GraphX library with a custom algorithm