Sistemas Distribuídos de Larga Escala
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Arquitetura de Computadores, Sistemas Operativos e Redes |
Ocorrência: 2022/2023 - 1S ![Requerida a integração com o Moodle Ícone do Moodle](/feup/pt/imagens/MoodleIcon)
Ciclos de Estudo/Cursos
Sigla |
Nº de Estudantes |
Plano de Estudos |
Anos Curriculares |
Créditos UCN |
Créditos ECTS |
Horas de Contacto |
Horas Totais |
M.EIC |
142 |
Plano de estudos oficial |
1 |
- |
6 |
52 |
162 |
Língua de trabalho
Português - Suitable for English-speaking students
Objetivos
Os objetivos principais da unidade curricular incluem:
- a aquisição de conhecimento sobre sistemas distribuídos de larga escala
- a aquisição de experiência de desenvolvimento de sistemas distribuídos de larga escala.
Resultados de aprendizagem e competências
Após conclusão com sucesso desta unidade curricular, os estudantes deverão ser capazes de:
- reconhecer e explicar a relevância da distribuição e de modelos de coordenação na escalabilidade de sistemas informáticos.
- reconhecer e caracterizar os desafios em sistemas distribuídos em termos de problemas e modelos abstratos
- identificar e discutir o papel de algoritmos distribuídos na solução de problemas de escala e de disponibilidade
- identificar e discutir o papel de algoritmos distribuídos na tolerância a falhas de sistemas de grande escala
- conceber aplicações/serviços de larga escala a partir duma especificação de requisitos
- implementar e avaliar serviços e aplicações distribuídos que resolvem problemas de grande escala em ambientes particionáveis e/ou de elevada latência
- identificar e compreender o estado da arte na área de sistemas distribuídos
Modo de trabalho
Presencial
Pré-requisitos (conhecimentos prévios) e co-requisitos (conhecimentos simultâneos)
Espera-se que os estudantes tenham frequentado com aproveitamento unidades curriculares sobre Sistemas Operativos, Redes de Computadores e Sistemas Distribuídos
Programa
Topologias distribuídas de larga escala
Projeto de sistemas para larga escala
Técnicas de implementação para larga escala
Eventos, tempo físico e tempo lógico
Modelos de coerência de dados
Tolerância a falhas bizantina e tecnologia "blockchain"
Bibliografia Obrigatória
M. van Steen and A. S. Tanenbaum;
Distributed systems, 3rd Ed., 2017 (https://www.distributed-systems.net/index.php/books/ds3/)
Bibliografia Complementar
G. Coulouris, J. Dollimore, T. Kindberg and G. Blair;
Distributed Systems: Concepts and Design, 5th Ed., Pearson, 2012. ISBN: 978-0132143011
Duncan J. Watts;
Small Worlds, Princeton University Press, 1999
Alex Petrov; Database Internals, O'Reilly, 2019
Pieter Hintjens; ZeroMQ, O'Reilly, 2013 (https://zguide.zeromq.org/)
Métodos de ensino e atividades de aprendizagem
As aulas teóricas são de exposição. Sempre que necessário, exemplos que ajudem à compreensão dos tópicos serão apresentados. Para complementar as bibliografias principal e complementar, serão fornecidos apontamentos ou artigos.
Para reforçar a compreensão dos assuntos e algoritmos apresentados nas aulas teóricas, os estudantes realizarão um projeto bem como trabalhos práticos de menor dimensão.
Software
Git
Rust
JDK
Go
NetworkX
gcc
Python
Zero-MQ
Palavras Chave
Ciências Tecnológicas > Tecnologia > Tecnologia de computadores > Tecnologia de software
Tipo de avaliação
Avaliação distribuída com exame final
Componentes de Avaliação
Designação |
Peso (%) |
Exame |
45,00 |
Trabalho prático ou de projeto |
45,00 |
Participação presencial |
10,00 |
Total: |
100,00 |
Componentes de Ocupação
Designação |
Tempo (Horas) |
Estudo autónomo |
50,00 |
Frequência das aulas |
52,00 |
Trabalho laboratorial |
60,00 |
Total: |
162,00 |
Obtenção de frequência
Para admissão ao exame final é obrigatório:
1) Frequentar pelo menos 75% das aulas TP previstas;
2) Ter uma classificação mínima de 10 na média dos trabalhos
3) Apresentar/demonstrar os trabalhos
4) Preencher os formulários de auto-avaliação/avaliação de pares
Fórmula de cálculo da classificação final
min( 0.45 Trab + 0.45 Ex + 0.1 PA, Trab + 3, Ex. + 3)
onde:
Trab -- a média das notas nos trabalhos
Ex -- nota do exame
PA -- participação nas aulas
Para aprovação, é necessária uma nota mínima de 10 (em 20) quer na média dos trabalhos quer no exame final.
Provas e trabalhos especiais
Não há.
Avaliação especial (TE, DA, ...)
Igual aos alunos normais.
Em época especial de exames, realiza-se apenas o exame teórico.
Melhoria de classificação
A componente do Exame final pode ser melhorada na época própria.
A repetição dos trabalhos para melhoria pode ocorrer apenas noutras ocorrências da unidade curricular.
Observações
Conteúdos em Inglês. As aulas poderão ser dadas em Inglês se houver estudantes que não sabem Português.