|Basics of architecture of distributed computer systems. |
|Content (Syllabus outline)
| Introduction to cloud computing (cloud storage, architecture, cloud service types, deployment models, sample architectures)
Parallel and distributed computer system models (clusters, grids, peer-to-peer, clouds)
Clustering (MPP architectures, design principles, scheduling methods, case studies)
Virtualization (CPU, memory, I/O devices; resource management; data centres; programming models - MapReduce)
Tools for management and supervision in cloud
Hardware units in installation of IaaS, hypervisor
Service models IaaS and PaaS
Private, public, community, and volunteer cloud architectures
Evolution of computer architectures, i.e., distributed/utility/cloud/grid/ computing, cloud platform services, solution examples
Capacity planning, scheduling and elasticity, HPC architectures and clients, tools to manage HPC
Advanced algorithm in cloud computing, HPC, parallel and distributed processing of large-scale data
Software, cloud application lifecycle, solutions in practice
Cloud security (introduction, securing the resources within cloud, securing data, security solutions, etc.)
Future of the Internet (ubiquitous cloud computing and the Internet of things, etc.)
| Barrie Sosinsky. Cloud Computing Bible. Wiley Publishing Inc. 2011.
Kai Hwang, Geoffrey C. Fox, Jack J. Dongarra. Distributed and Cloud Computing, From Parallel Processing to the Internet of Things. Morgan Kaufmann. 2012.
Thomas A. Limoncelli, Strata R. Chalup, Cristina J. Hogan. The practice of cloud system administration, Designing and operating large distributed systems. Addison Wesley. 2015.
Thomas Erl, Robert Cope, Amin Naserpour. Cloud Computing Design Patterns. Prentice Hall; 1st edition. 2015.
Andreas Wittig, Michael Wittig. Amazon Web Services in Action. Manning Publications. 1st edition. 2015.
Michael J. Kavis. Architecting the Cloud: Design Decisions for Cloud Computing Service Models (SaaS, PaaS, and IaaS). Wiley; 1st edition. 2014.
|Objectives and competences
|The objectives of this course is to provide students with an overview of the cloud computing, to acquaint them with basic building blocks of this technology, in cloud computing deployment and management. |
|Intended learning outcomes - knowledge and understanding
|On completion of this course the student will be able to:
explain the basic concepts of cloud computing architecture,
apply these basic concepts for building the data centres,
understand the concept of virtualization and its application for building cloud computing,
distinguish the different service architectures of cloud computing, to be familiar with their advantages and weaknesses.
|Intended learning outcomes - transferable/key skills and other attributes
| Communication skills: oral lab work defence, manner of expression at written examination.
Use of information technology and problem solving: use the concept of cloud storage, and apply the MapReduce programming model.
|Learning and teaching methods