Visão Geral
O curso ksqlDB Fundamentals apresenta os conceitos essenciais, a arquitetura e o uso prático do ksqlDB, o banco de dados orientado a streams da Confluent, que permite processar dados em tempo real utilizando SQL diretamente sobre tópicos do Apache Kafka.
Durante o curso, os participantes aprenderão a criar streams, tables, consultas persistentes, transformar dados, realizar joins, construir pipelines de eventos em real-time e aplicar boas práticas de mercado.
O treinamento é totalmente prático, com laboratório individual para cada aluno.
Objetivo
Após realizar este curso ksqlDB Fundamentals, você será capaz de:
- Entender os conceitos fundamentais de stream processing e do ksqlDB
- Criar e consultar Streams e Tables
- Construir consultas persistentes para processar dados em tempo real
- Efetuar transformações, agregações e joins entre fluxos de dados
- Criar materialized views
- Interagir com o ksqlDB via console e via API
- Projetar pipelines de streaming utilizando boas práticas
- Integrar o ksqlDB ao Apache Kafka e a outros sistemas downstream
Publico Alvo
- Engenheiros de Dados
- Desenvolvedores
- Arquitetos de software
- Administradores de Apache Kafka
- Analistas de dados que querem trabalhar com streaming
- Profissionais que constroem pipelines e integrações de dados
Pre-Requisitos
- Conhecimento básico de Apache Kafka
- Noções de SQL
- Noções de Docker (desejável)
Materiais
Inglês/Português + Exercícios + Lab Pratico
Conteúdo Programatico
1. Introduction to ksqlDB
- What is ksqlDB
- Why ksqlDB: Key features and benefits
- Positioning: Kafka Streams vs. ksqlDB
- Stream processing concepts recap
2. ksqlDB Architecture
- ksqlDB Server
- ksqlDB CLI and UI
- Persistent and transient queries
- Materialized views
- ksqlDB and Kafka internal topics
3. Installing and Accessing ksqlDB
- Running ksqlDB with Docker
- Connecting ksqlDB to Kafka
- Using the ksqlDB CLI
- Using the ksqlDB Web UI
4. Streams and Tables
- Understanding Streams
- Understanding Tables
- CREATE STREAM
- CREATE TABLE
- Key concepts: keys, partitions, value formats
5. Querying Data
- SELECT statements
- Pull queries
- Push queries
- Filtering, projecting, and transforming data
6. Persistent Streaming Queries
- Creating persistent queries
- Stream-to-stream operations
- Stream-to-table operations
- Table-to-table operations
7. Transformations and Aggregations
- Windowing: tumbling, hopping, and session windows
- Grouping and aggregating
- Count, sum, avg, min, max
- Creating aggregated materialized views
8. Joins in ksqlDB
- Stream-stream joins
- Stream-table joins
- Table-table joins
- Time-based joins and constraints
9. Serialization, Schemas, and Formats
- Avro, JSON, Protobuf
- Schema Registry integration
- Schema evolution best practices
10. Error Handling and Troubleshooting
- Handling serialization issues
- Inspecting internal topics
- Monitoring persistent queries
- Dealing with failures and restarts
11. Interacting Programmatically
- ksqlDB REST API
- Integrating applications with ksqlDB
- Querying materialized views via API
12. Real-World Use Cases
- Fraud detection
- Real-time ETL
- Monitoring and observability pipelines
- IoT data processing
- Customer analytics in real time
13. Hands-on Labs
- Deploying ksqlDB + Kafka environment
- Creating streams and tables
- Filtering and transforming event data
- Building windowed aggregations
- Implementing stream-stream join pipelines
- Exposing materialized views through API
14. Best Practices
- Data modeling strategies for streaming
- Choosing keys and partitions
- Designing pipelines for high throughput
- Operational guidelines for production
TENHO INTERESSE