Informações da Disciplina

 Preparar para impressão 

Júpiter - Sistema de Gestão Acadêmica da Pró-Reitoria de Graduação


Instituto de Ciências Matemáticas e de Computação
 
Sistemas de Computação
 
Disciplina: SSC0965 - Streaming de Dados, Microsserviços e Containers
Data Streaming, Microservices and containers

Créditos Aula: 4
Créditos Trabalho: 2
Carga Horária Total: 120 h
Tipo: Semestral
Ativação: 01/01/2024 Desativação:

Objetivos
Transmitir aos alunos conceitos sobre streams de dados, considerando seus aspectos relacionados ao ambiente de containers e a produção de aplicações nativas da Web com foco na arquitetura de microservices.
 
Transmit to students concepts about data streams, considering its aspects related to the container environment and a production of native Web applications with a focus on microservices architecture.
 
 
Docente(s) Responsável(eis)
5056436 - Júlio Cezar Estrella
 
Programa Resumido
Fundamentos em Arquiteturas de Dados. Introdução a Stream de Dados. Arquiteturas de sistemas de processamento de streams. Padrões de Projetos de Stream de Dados. Coleta, armazenamento e processamento de dados de fluxos contínuos. Ferramentas para Stream de Dados Massivos. Introdução a Arquitetura de Software. Construção de APIs. Migração de sistemas monolíticos para micro serviço. Práticas na construção de uma API (Documentação e Segurança de APIs). Infraestrutura para processamento de dados escaláveis. Balanceadores de Carga. Virtualização e Containers. Ferramentas de monitoramento de soluções escaláveis. Ferramentas de Infrastructure as Code (IaC) para implantação automatizada de infraestrutura.
 
Fundamentals in Data Architectures.Introduction to Data Stream.Stream processing system architectures. Data Stream Design Standards. Collection, storage and processing of streaming data. Massive Data Streaming Tools. Introduction to Software Architecture. Building APIs. Migration from monolithic systems to microservices. Practices in building an API (API Documentation and Security). Infrastructure for scalable data processing. Load Balancers. Virtualization and Containers. Scalable Solution Monitoring Tools. Infrastructure as Code (IaC) tools for automated infrastructure deployment.
 
 
Programa
1.	Fundamentos em Arquiteturas de Dados
a.	 Componentes e elementos
2.	Introdução a Stream de Dados
a.	Conceitos e Requisitos
3.	Arquiteturas de sistemas de processamento de streams
4.	Padrões de Projetos de Stream de Dados
5.	Coleta, armazenamento e processamento de dados de fluxos contínuos
6.	Ferramentas para Stream de Dados Massivos
a.	 Apache Kakfa
b.	Apache Spark
c.	Apache Hadoop
d.	Scala 
7.	Introdução a Arquitetura de Software
a.	 SOA, Microsserviços, Monolíticos
8.	Construção de APIs
a.	Web Services (SOAP), REST, GraphQL.
9.	Migração de sistemas monolíticos para microsserviço.
10.	Práticas na construção de uma API (Documentação e Segurança de APIs)
11.	Infraestrutura para processamento de dados escaláveis
12.	Balanceadores de Carga
13.	Virtualização e Containers
14.	Ferramentas de monitoramento de soluções escaláveis
a.	Zabbix
b.	Data Dog
c.	Prometheus
15.	Ferramentas de Infrastructure as Code (IaC) para implantação automatizada de infraestrutura
a.	Terraform
b.	Terragrunt
c.	Pulumi
d.	Cloud Formation

Atividades de extensão: Disponibilização de material didático em diversos formatos (REAs, Vídeos, Tutoriais) acerca de plataformas para lidar com processamento de data stream. Ajustes de plataformas existentes para processamento de dados em tempo real e elaboração de materiais. A carga horária corresponde a 60 horas.
 
1. Fundamentals in Data Architectures a. Components and elements 2. Introduction to Data Stream a. Concepts and Requirements 3. Stream processing system architectures 4. Data Stream Design Standards 5. Collection, storage and processing of streaming data 6. Massive Data Streaming Tools a. Apache Kakfa b. Apache Spark c. Apache Hadoop d. Scala 7. Introduction to Software Architecture a. SOA, Micro Services and Monolithic 8. Building APIs a. Web Services (SOAP), REST, GraphQL. 9. Migration from monolithic systems to microservices. 10. Practices in building an API (API Documentation and Security) 11. Infrastructure for scalable data processing 12. Load Balancers 13. Virtualization and Containers 14. Scalable Solution Monitoring Tools a. Zabbix b. Data Dog c. Prometheus 15. Infrastructure as Code (IaC) tools for automated infrastructure deployment a. Terraform b. Terragrunt c. Pulumi d. Cloud Formation
 
 
Avaliação
     
Método
Exposição seguida de exercícios e trabalhos práticos.
Critério
Serão atribuídas notas a exercícios e trabalhos práticos executados fora de classe, e nas provas sobre os assuntos do programa. A nota final será calculada pela média ponderada dessas notas obtidas pelo aluno no decorrer do semestre.
Norma de Recuperação
(NP-2) / 5 * Mrec + 7 - NP, se Mrec >= 5; ou Max { NP, Mrec }, se Mrec < 5
 
Bibliografia
     
Bibliografia Principal

- Akidau, Tyler, Slava Chernyak, and Reuven Lax. 2018. Streaming systems: the what, where, when, and how of large-scale data processing.
- Narkhede, N., Shapira, G., & Palino, T. (2017). Kafka - the definitive guide: Real-time data and stream processing at scale.
- Newman, S., & Safari, an O'Reilly Media Company. (2021). Building Microservices, 2nd Edition.
- Operadores do Kubernetes: Automatizando a plataforma de orquestração de contêineres, Novatec, 1a Edição, 172p, 2020

- Notas de aula


Bibliografia Complementar

- Burns, Brendan. 2018. Designing distributed systems: patterns and paradigms for scalable, reliable services.
- Kleppmann, M. (2018). Designing data-intensive applications: The big ideas behind reliable, scalable, and maintainable system
- Descomplicando o Docker, 2a Edição, 2018
- Kubernetes Básico: Mergulhe no futuro da infraestrutura, Novatec,  1a Edicao, 316p, 2020
- Engenharia de Confiabilidade do Google: Como o Google Administra Seus Sistemas de Produção, Novatec,  1a Edição, 632p, 2016
- Poulton, N. (2021). The Kubernetes book. 
 

Clique para consultar os requisitos para SSC0965

Clique para consultar o oferecimento para SSC0965

Créditos | Fale conosco
© 1999 - 2024 - Superintendência de Tecnologia da Informação/USP