Introduction to Cloud Computing

Professors Dimosthenis Kyriazis
Andreas Menychtas
Evangelos Haleplidis
Course category CM/CIS
Course ID DS-526
Credits 5
Lecture hours 3 hours
Lab hours 2 hours
Digital resources View on Aristarchus (Open e-Class)

Learning Outcomes

The main objective of this course is to introduce concepts related to the analysis, design and implementation of computation and storage clouds. With the completion of the course, the student will be in position:

  • to understand the necessary theoretical background for computing and storage clouds environments.
  • to know the methodologies and technologies for the development of applications that will be deployed and offered through cloud computing environments.
  • to be able to realize cloud infrastructures by using IaaS software, while also developing cloud applications by utilizing PaaS software.

Course Contents

  • Introduction to cloud computing.
  • Objectives, challenges, application domains, advantages.
    • Computational and storage cloud architectures
    • Service level agreements, service lifecycle management
  • Infrastructure deployment, federation and management models.
    • Cloud service model, service provisioning and access models
    • Elasticity and scalability techniques
    • Information, account and billing management
  • Implementation and operation / management of computational clouds.
    • Software as a Service layer
    • Platform as a Service layer
    • Infrastructure as a Service layer
    • Virtualization and resource management
  • Implementation and operation / management of storage clouds.
    • Distributed object storage clouds
    • Data storage and retrieval based on content
    • Computational tasks execution in storage clouds
  • Quality of service approaches.
    • Requirements and parameters classification
    • Monitoring and control mechanisms
    • Quality of service guarantees
  • Laboratory exercises.
    • Google AppEngine
    • OpenStack
    • Apache Hadoop / MapReduce

Moreover, the EVDOXOS system is utilized to provide additional useful information to the students as well as exercises that respond to the corresponding thematic topics / sessions covered by the course.

Recommended Readings

  • Α. Velte, T. Velte, R. Elsenpeter, «Cloud Computing: A practical approach»
  • T. Erl, «Cloud Computing: Concepts, Technology & Architecture»
  • B. Sosinsky, «Cloud Computing Bible»G. Reese, «Cloud Application Architectures: Building Applications and Infrastructure in the Cloud»
  • R. Buyya, J. Broberg, A. M. Goscinski, «Cloud Computing, Principles and Paradigms»