This is an optional course for advanced under-graduate or graduate students on the fundamentals, models and architectures of large computer systems, focusing on Cloud environments and services. We also cover Data Centers and storage, networking and computational technologies. Students will gain hands-on experience solving relevant problems (e.g., Big Data) through projects using either the department´s infrastructure or existing public clouds.
Knowledge
Skills and competences
1- Introduction and motivation: target applications and their requirements. Support systems characteristics: components and service models.
2- Infrastructures and Data Centers. Historical perspective. Computing, network and storage infrastructures.
3- Resource virtualization for elastic infrastructures. Hardware virtualization technologies. Resource management, orchestration, partitioning and sharing.
4- Cloud services for distributed applications support and on-demand computing and storage. Concepts and implementation. A discussion on costs, elasticity, performance, availability, management and privacy.
5- Programming models and operation of common platforms. Case studies: Google AppEngine, Amazon AWS and Big Data processing using Elastic MapReduce.
Cloud Computing: Theory and Practice, Dan C. Marinescu, Morgan Kaufman-Elsevier, 2013.
The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines, Luiz André Barroso, Jimmy Clidaras, Urs Hölzle, Synthesis Lectures on Computer Architecture, Morgan & Claypool Publishers, 2013.
Selected conference and/or journal papers.
The student should have taken first/intermediate-level courses the following subjects: Operating Systems, Computer Networks and Distributed Systems.
Hours per credit | 28 | ||
Hours per week | Weeks | Hours | |
Total hours | 0 | ||
ECTS | 6.0 |