Visão Geral
Este Curso Building Streaming Pipelines with Flink ensina como projetar, desenvolver e implementar pipelines de streaming utilizando o Apache Flink. O foco é criar fluxos de dados contínuos, confiáveis e escaláveis, usando boas práticas de arquitetura, integração com sistemas modernos e estratégias de tolerância a falhas. Você aprenderá desde os fundamentos do streaming até a construção de pipelines complexos prontos para produção.
Conteúdo Programatico
Module 1 – Introduction to Streaming Pipelines
- What is a streaming pipeline?
- Batch vs streaming pipelines
- Architectural patterns for streaming systems
- Why Flink? Key advantages
Module 2 – Flink Pipeline Fundamentals
- Streams, operators, and topologies
- Parallelism and scaling
- Data flow and execution graphs
- Overview of Flink runtime
Module 3 – Designing Pipeline Architectures
- Event sourcing principles
- Ingestion → processing → output flows
- Stateless vs stateful design
- Handling real-world data constraints
Module 4 – Working with the DataStream API
- Transformations
- Keyed streams and partitioning
- Rich functions and custom logic
- Handling serialization
Module 5 – Windowing and Event-Time Processing
- Time characteristics
- Advanced window strategies
- Watermark design
- Out-of-order event handling
Module 6 – State Management & Consistency
- State backends
- Local and distributed state
- Checkpoints, savepoints, and recovery
- Designing exactly-once pipelines
Module 7 – Ingesting and Emitting Data
- Kafka integration
- Working with file systems (S3/HDFS/local)
- JDBC sinks and NoSQL systems
- Schema evolution and data formats
Module 8 – Advanced Pipeline Patterns
- Streaming joins
- Enrichment pipelines
- Routing and dynamic control logic
- CEP integration for complex patterns
Module 9 – Observability & Monitoring
- Metrics and logging
- Detecting backpressure
- Resource tuning
- Debugging streaming pipelines
Module 10 – Deploying Streaming Pipelines
- Standalone vs cluster modes
- Docker and Kubernetes deployments
- CI/CD for streaming apps
- Managing multiple environments
Module 11 – Capstone Project
- Designing a complete real-time pipeline
- Building ingestion with Kafka
- Processing and windowing events
- Publishing results to external systems
- Running the pipeline in a cluster environment