Visão Geral
A necessidade de processamento e dados em tempo real se tornou uma necessidade para muitas indústrias em toda a Internet.
Com a importância dos dados, tornou-se crucial que o big data seja transmitido de maneira mais rápida e melhor. É aqui o Kafka marca a sua presença.
O Apache Kafka foi desenvolvido em um laboratório de informática do LinkedIn, onde foi originalmente usado como meio para resolver a ingestão de baixa latência de grandes quantidades de dados de eventos do site e da infraestrutura do LinkedIn em uma arquitetura lambda que aproveitou o Hadoop e o processamento de eventos em tempo real sistemas.
Desde então, ele evoluiu para um produto de tempo integral que é usado por muitas empresas de renome, como Airbnb, Netflix e Uber, para lidar com grandes quantidades de dados.
Os benefícios de usar o Kafka incluem que esta plataforma de processamento de stream de código aberto oferece dados em tempo real, é fácil de escalar e também distribuir.
Agora, podemos ter big data que também são dados inteligentes.
Parece uma ótima adição ao seu currículo? A demanda por arquitetos de cluster Kafka é atualmente alta e o retorno para especialistas em Kafka é bastante grande.
Se você deseja um curso prático que o ajude a analisar o Kafka de uma maneira simples e fácil de aprender, então você escolheu o curso certo!
Kafka tem uma curva de aprendizado bastante acentuada e inclui alguns conceitos e métodos bastante complexos.
Requer amplo conhecimento sobre como funcionam os sistemas distribuídos.
No entanto, neste curso, você só precisa conhecer os fundamentos do UNIX e Java e nada mais.
Não importa se você é um iniciante ou intermediário - este curso tem algo reservado para você.
Este curso foi desenvolvido para ajudá-lo a aprender tudo o que você precisa saber sobre o Kafka, desde como fazer o download, instalá-lo e até começar a projetar seu próprio cluster.
Vejamos o que você aprenderá neste curso:
- Introdução detalhada ao Kafka
- Introdução ao Zookeeper
- Instalação e configuração do Kafka e Zookeeper
- Componentes centrais e arquitetura do Kafka
- Replicação de dados e trabalho com Kafka Connect
- Compreendendo a interface de linha de comando do Kafka
- Prática com Producer & Consumer API em JavaScript
- Prática com Streaming API em Java
Conteúdo Programatico
Modulo I: Arquitetura Kafka
- Origem de Kafka
- Instalando Kafka
- Instalando Java e Zookeeper
- Instalando um Kafka Broker
- Configuração do corretor
- Seleção de Hardware
- Diferentes versões do Kafka
- A nova arquitetura Kafka (sem o Zookeeper)
- Como fazer migrações?
Exercício 1: Trabalhando com Vários Produtores e Consumidores
Modulo II: Produtores e consumidores
- Enviando eventos para Kafka - Producer API
- Envio Assíncrono
- Lendo eventos de Kafka - API do consumidor
- Configurações do corretor:
Exercício 2: Criando vários corretores e verificando como as mensagens em tópicos serão encaminhadas para os corretores
Modulo III: Kafka avançado
- API Kafka Producer
- Exercício 3: Escrevendo um Produtor Kafka Customizado e Entendendo o que é um ProducerRecord
- Trabalhar com uma API Custom Kafka Consumer
Exercício 4: Escrevendo um consumidor Kafka personalizado e entendendo o que é um registro do consumidor
- Consumer Pool Loop - Gerenciamento de compensação
- Rebalanceamento de consumidores
Modulo IV: serialização do Kafka com Avro
- Exercício 5: como serializar dados usando Avro
- Serializadores
- Como implementar serializadores personalizados
- Serializando usando Apache Avro
- Usando Avro Records com Kafka
Modulo V: Compreendendo as partes internas
- Elegendo líderes de partição - componente do controlador Kafka
- Benefícios do particionamento de dados entre corretores
- Particionamento de tópicos - Implementação do profissional personalizado
- Escrevendo Particionador Customizado para Particionamento Específico
- Replicação de dados em Kafka
- Registro de distribuição apenas para anexos - Armazenamento de eventos em Kafka
- Processo de Compactação
Exercício 6: Escrevendo um particionador personalizado e verificando como as mensagens são particionadas com base na lógica personalizada do particionador
Gerenciamento de compensação personalizado em Kafka
Exercício 7: Escrevendo código para obter um deslocamento específico de uma mensagem
Modulo VI: Monitorando Kafka - Melhores Práticas
- Broker Health Monitoring
- Kafka e Metrics Reporters
- Monitore partições sub-replicadas
- Monitorar eventos
- Ajuste de desempenho
Exercício 8: Como verificar as métricas em Kafka
Modulo VII: Consideração de Design e Melhores Práticas de Kafka
- Casos de uso prático
- Considerações práticas
Apêndice A: Mais sobre Kafka
- Ajustando e otimizando configurações de carga útil / tempos limite
- Dimensionamento da partição de acordo com o volume de dados
- Tratamento de erros / exatamente - uma vez / entrega garantida
- Lidando com Rebalanceamento
Apêndice B: Explorando o ecossistema Kafka e seu futuro
- API Kafka Streams (KTables e KStreams)