Disciplina Curricular

Computação em Nuvem e Virtualização AVExe

Mestrado Bolonha em Engenharia Informática e de Computadores - Taguspark - MEIC-T 2021

Contextos

Grupo: MEIC-T 2021 > 2º Ciclo > Área Principal > Agrupamentos > Sistemas Distribuídos

Período:

Grupo: MEIC-T 2021 > 2º Ciclo > Área Principal > Agrupamentos > Gestão de Serviços de It

Período:

Grupo: MEIC-T 2021 > 2º Ciclo > Área Principal > Agrupamentos > Engenharia e Ciência de Dados

Período:

Peso

6.0 (para cálculo da média)

Pré-requisitos

Conhecimentos base de arquitectura de computadores, sistemas operativos, linguagem de programação Java, sistemas distribuídos.

Objectivos

Deter uma perspectiva integradora da computação em nuvem e da virtualização, e da sua conjugação e síntese, no desenho dos sistemas modernos na computação distribuída em larga escala, com as suas tecnologias, mecanismos e algoritmos subjacentes. Compreender uma abordagem vertical às diversas tecnologias de virtualização e da computação em nuvem, que oferecem às aplicações e serviços maior flexibilidade, melhor utilização de recursos e eficiência económica, e maior escalabilidade e adaptabilidade. Ser capaz de desenvolver aplicações e sistemas, escaláveis e fiáveis, para computação em nuvem, sobre as infra-estruturas e plataformas de virtualização, e modelos aplicacionais adoptados. Ser capaz de avaliar escolhas, soluções, e compromissos envolvidos no desenvolvimento, uso e gestão de infra-estruturas de virtualização para computação em nuvem.

Programa

Introdução à Virtualização e Computação em Nuvem, IaaS, PaaS, SaaS. Virtualização sistema: arquitectura de VM sistema, virtualização CPU, memória; suporte hardware; casos de estudo (VMWare, QEMU/KVM, Xen). Sistemas de computação na nuvem (Amazon EC2, OpenStack, Microsoft Azure); escalonamento, migração e replicação de VMs; monitorização e escalabilidade (CloudWatch, Autoscaling). Virtualização processo: especificação e arquitectura da Java VM, modelo de segurança, compilação just-in-time e optimização, reciclagem automática de memória, caso de estudo (Jikes RVM). Plataformas de computação na nuvem (Google App Engine, Azure); monitorização e escalabilidade (Azure Fabric Controller). Armazenamento Big-Data: blocos, ficheiros, chave-valor (Dynamo, S3, Datastore), tabular (BigTable, Percolator). Processamento Big-Data: Map-reduce, dataflows (Pig, Dryad/LINQ), streams (Spark, Flink). Questões Transversais: eficiência energética, redimensionamento dinâmico, desenho centrado na energia.

Metodologia de avaliação

Método Normal: Exame (40%), Projecto (45%), Apresentação de Artigo (10%) e Presença/Participação Aulas (5%). O projecto tem um checkpoint cuja nota só é usada se subir a nota; tem uma ponderação de 15% da nota global do Projecto. Método Trabalhadores-Estudantes: Exame (45%), Projecto (45%), Apresentação de Artigo (10%). Época Especial: Exame (50%), Projecto adaptado (50%). Nota mínima p/ Exame e Projecto: 8 valores.

Componente de Competências Transversais

O projecto laboratorial ao longo do semestre, nas suas duas fases, requer e exercita o trabalho em equipa no seu desenho e desenvolvimento. O relatório final do projecto (6 páginas) requer e exercita a comunicação escrita. A apresentação de artigo de conferência científica numa aula de laboratório requer e exercita a comunicação oral (apresentação e resposta a questões da audiência). A apresentação vale 10% da nota final na UC.

Componente Laboratorial

Introdução à instrumentação de código (binário, bytecode). Desenvolvimento de ferramentas exemplo de instrumentação para x86 e Java. Introdução e exercícios de laboratório executando Amazon Web Services (EC2, CloudWatch, DynamoDB). Desenho e implementação de uma aplicação instrumentada em Java como protótipo de um sistema distribuído elástico e escalável executando uma tarefa de computação/processamento de dados intensiva sobre recursos numa nuvem pública fazendo uso de interfaces de programação para gerir computação (máquinas virtuais) e armazenamento distribuído.

Componente de Programação e Computação

No curso onde esta UC é oferecida estão asseguradas as componentes de Computação e Programação de acordo com o MEPP 2122.

Princípios Éticos

Todos os membros de um grupo são responsáveis pelo trabalho do grupo. Em qualquer avaliação, todo aluno deve divulgar honestamente qualquer ajuda recebida e fontes usadas. Numa avaliação oral, todo aluno deverá ser capaz de apresentar e responder a perguntas sobre toda a avaliação.

Disciplinas Execução

2023/2024 - 2º semestre

2022/2023 - 2º semestre

2021/2022 - 2º Semestre