Currículo
Big Data (Dtda) 04109
Contextos
Groupo: Desenvolvimento de Software e Aplicações - 2023 > 1º Ciclo > Unidades Curriculares Obrigatórias
ECTS
6.0 (para cálculo da média)
Objectivos
No final da UC os alunos deverão ser capazes de: OA1. Compreender e identificar os problemas associados ao processamento de grandes quantidades de informação OA2. Compreender os conceitos e ecossistema da Big Data. OA3. Saber desenhar e concretizar soluções de armazenamento de dados em ambiente distribuído e tolerantes a falhas. OA4. Saber extrair, manipular e carregar grandes quantidades de informação de frontes de dados não estruturadas OA5. Saber manipular e processar bases de dados não relacionais. OA6. Compreender e saber aplicar os modelos de programação e computação distribuídos. OA7. Compreender e saber aplicar técnicas para tratamento de estruturas JSON e fluxo de dados em tempo real. OA8. Desenvolver a criatividade, inovação tecnológica, pensamento crítico. OA9. Desenvolver a autoaprendizagem, revisão por pares, trabalho em equipa, expressão escrita e oral.
Programa
CP1. O conceito de Big Data, os problemas aplicáveis e o respetivo ecossistema. CP2. Introdução às bases de dados não relacionais e ao MongoDB. CP3. Arquitetura de computação para Big Data: (1) redundante e tolerante a falhas e (2) distribuída para suportar grandes volumes de dados. Exemplo da plataforma Hadoop e do seu sistema de ficheiros distribuído. CP4. O modelo de programação MapReduce. CP5. O desenho de bases de dados no MongoDB. CP6. A manipulação de estruturas JSON e de dados em tempo real. CP7. O processo de ETL (Extract, Transform and Load) aplicado a datasets com dados reais desnormalizados e desenvolvimento de aplicações de processamento de Big Data em ambientes Spark e MongoDB.
Método de Avaliação
Esta UC segue o modelo de avaliação ao longo do semestre (ALS), o que não contempla um exame final com uma ponderação a 100%. A ALS é constituída pelos seguintes elementos: - 8 tarefas semanais [2,5% * 8 = 20% no total] - 2 mini-testes [15% cada * 2 = 30% no total] - Projeto de laboratório [50%] O projeto de laboratório poderá ser realizado individualmente ou em grupo, onde consiste na elaboração de um projeto prático que posteriormente será alvo de discussão oral individual. Se o aluno reprovar na época normal (<10 valores), o aluno acede ao exame de 1º ou 2ª épocas, valendo 50% da nota, sendo obrigatória a aprovação no projeto de laboratório ou a realização de um projeto individual (50%). Caso o aluno não tenha aprovação no projeto de laboratório ou no projeto individual (se for o caso), encontra-se reprovado a esta UC.
Carga Horária
Carga Horária de Contacto -
Trabalho Autónomo - 113.0
Carga Total -
Bibliografia
Principal
- 1. Nudurupati, S. (2021). Essential PySpark for Scalable Data Analytics: A beginner’s guide to harnessing the power and ease of PySpark 3. Packt Publishing. 2. Sardar, T. H. (2023). Big data computing: Advances in technologies, methodologies, and applications. CRC Press. 3. Tandon, A., Ryza, S., Laserson, U., Owen, S., & Wills, J. (2022). Advanced analytics with PySpark: Patterns for learning from data at scale using Python and Spark. O’Reilly Media.: