Métodos de Ensino
A atividade letiva decorre em regime presencial, com exposição de conceitos, técnicas e métodos, com grande enfoque na resolução de
problemas práticos. Será utilizado software de apoio à resolução de problemas.
Resultados de Aprendizagem
Na vida quotidiana, enormes quantidades de dados são geradas, quer através de websites, quer de telemóveis, dispositivos vestíveis ou
sensores associados à Internet das Coisas, entre outros. O processamento desta enorme quantidade de dados requer a utilização de
ferramentas específicas que excedem a capacidade dos nossos PCs e mesmo de alguns servidores, tornando necessária a adoção de
sistemas distribuídos para o processamento desses dados. O principal objetivo deste curso é familiarizar os alunos com as mais
importantes tecnologias de informação utilizadas na manipulação, armazenamento e análise de grandes quantidades de dados, sendo um
dos exemplos maiores o framework Apache Spark, utilizado para computação distribuída.
Programa
1. Fundamentos de Big Data
1.1 Conceitos e motivação.
1.2 Os 5 Vs e tipos de dados.
1.3 Arquiteturas e aplicações.
2. Ecossistema Hadoop
2.1 HDFS e armazenamento distribuído.
2.2 MapReduce: princípios e exemplos.
2.3 Componentes do ecossistema.
3. Apache Spark
3.1 Conceitos principais e vantagens.
3.2 RDDs, DataFrames e transformações.
3.3 Persistência e ações.
4. Processamento de Dados em Larga Escala
4.1 Pipelines de dados.
4.2 Integração com sistemas distribuídos.
4.3 Casos de uso.
5. Machine Learning em Big Data
5.1 MLlib: modelos básicos.
5.2 Avaliação distribuída.
5.3 Exemplos aplicados.
Estágio(s)
NAO
Bibliografia
Rajaraman, A., & Ullman, J. (2011). Mining of massive datasets. Cambridge University Press.
Ryza, S., et al. (2017). Advanced analytics with Spark: Patterns for learning from data at scale. O’Reilly Media.
Mendelevitch, O., Stella, C., & Eadline, D. (2016). Practical data science with Hadoop and Spark: Designing and building effective analytics
at scale. Addison-Wesley.
Deitel, P., & Deitel, H. (2019). Intro to Python for computer science and data science: Learning to program with AI, big data and the cloud.
Pearson.
Klosterman, S. (2019). Data science projects with Python: A case study approach to successful data science projects using Python,
pandas, and scikit-learn. Packt Publishing.
Triguero, I., & Galar, M. (2023). Large-scale data analytics with Python and Spark: A hands-on guide to implementing machine learning
solutions. Cambridge University Press.