Trilha de estudo
Trilha Sistemas de Streaming: tudo o que estudar, tópico por tópico
Avaliação abrangente de semântica de dados em streaming baseada em Streaming Systems de Akidau, Chernyak e Lax: batch versus streaming, a dualidade stream/tabela, tempo do evento versus tempo de processamento, janelamento, marcas d'água (watermarks), gatilhos, modos de acumulação, processamento exatamente-uma-vez, pipelines com estado e o modelo Beam/Dataflow.
Resposta curta
Para aprender Sistemas de Streaming, percorra 6 módulos e 25 tópicos na ordem em que um apoia o próximo. Comece por Fundamentos de Streaming e siga para Janelamento e Tempo e Watermarks. Use o mapa como checklist, ou meça seu nível e estude só o que falta.
O que você vai estudar
Os tópicos estão agrupados por módulo. Abra um para ver os objetivos e os conceitos-chave.
1 · Fundamentos de Streaming5 tópicos
Batch versus Streaming
Compreender a falsa dicotomia entre batch e streaming: streaming é um superconjunto que processa dados não-limitados com baixa latência, enquanto batch é streaming sobre um conjunto de dados limitado
Objetivos
- Explicar por que batch é um caso especial limitado de streaming
- Identificar quando uma abordagem de streaming é preferível a batch
Conceitos-chave
- dados limitados
- dados não-limitados
- batch como caso especial de streaming
- baixa latência
- completude versus latência
Dados Não-Limitados
A natureza dos conjuntos de dados não-limitados (infinitos): dados que chegam continuamente sem um fim conhecido, exigindo processamento incremental e uma estratégia para emitir resultados antes de todos os dados terem chegado
Objetivos
- Descrever os desafios que dados não-limitados impõem a ferramentas batch tradicionais
- Explicar por que os resultados devem ser emitidos incrementalmente sobre dados não-limitados
Conceitos-chave
- conjuntos de dados infinitos
- chegada contínua
- processamento incremental
- resultados parciais
- chegada fora de ordem
Dualidade Stream/Tabela
A dualidade fundamental: um stream é o changelog de uma tabela, e uma tabela é o snapshot acumulado de um stream. O agrupamento converte um stream em tabela; o desagrupamento converte uma tabela de volta em stream
Objetivos
- Explicar como um stream e uma tabela são duas visões dos mesmos dados
- Descrever como o agrupamento e os gatilhos relacionam streams e tabelas
Conceitos-chave
- stream como changelog
- tabela como snapshot
- agrupamento converte stream em tabela
- desagrupamento converte tabela em stream
- visão materializada
Tempo do Evento versus Tempo de Processamento
Os dois domínios de tempo: tempo do evento (quando o evento de fato ocorreu) versus tempo de processamento (quando o sistema o observa), e o desvio (skew) variável e imprevisível entre eles
Objetivos
- Distinguir tempo do evento de tempo de processamento com exemplos concretos
- Explicar por que o desvio entre os dois domínios de tempo é variável e ilimitado
Conceitos-chave
- tempo do evento
- tempo de processamento
- desvio de tempo (skew)
- eventos fora de ordem
- ideal versus realidade (a diagonal do domínio de tempo)
O Framework O Quê/Onde/Quando/Como
As quatro perguntas que estruturam qualquer pipeline de processamento de dados fora de ordem: O QUÊ é computado (transformações), ONDE no tempo do evento é computado (janelamento), QUANDO no tempo de processamento é materializado (gatilhos/watermarks) e COMO os refinamentos se relacionam (acumulação)
Objetivos
- Mapear as quatro perguntas para as primitivas correspondentes do modelo
- Usar o framework para decompor um requisito de streaming
Conceitos-chave
- o quê = transformações
- onde = janelamento
- quando = gatilhos e watermarks
- como = acumulação
- separação de responsabilidades
2 · Janelamento4 tópicos
Janelas Fixas
Janelas fixas (tumbling) particionam o tempo do evento em intervalos contíguos, não sobrepostos e de tamanho igual, com cada elemento atribuído a exatamente uma janela
Objetivos
- Definir janelas fixas e suas propriedades principais
- Escolher um tamanho de janela fixa apropriado para uma agregação
Conceitos-chave
- janelas tumbling
- intervalos não sobrepostos
- tamanho fixo
- janelas alinhadas versus não alinhadas
- um elemento por janela
Janelas Deslizantes
Janelas deslizantes (hopping) definidas por um tamanho e um período; quando o período é menor que o tamanho, as janelas se sobrepõem e um único elemento pertence a múltiplas janelas
Objetivos
- Explicar como tamanho e período determinam a sobreposição de janelas deslizantes
- Aplicar janelas deslizantes para calcular agregações suavizadas/móveis
Conceitos-chave
- janelas hopping
- tamanho da janela e período de deslize
- janelas sobrepostas
- elemento em múltiplas janelas
- médias móveis
Janelas de Sessão
Janelas dinâmicas e orientadas a dados que agrupam rajadas de atividade separadas por intervalos maiores que uma duração de intervalo configurada; a extensão das janelas depende dos próprios dados
Objetivos
- Explicar como janelas de sessão se formam a partir de intervalos de atividade
- Escolher uma duração de intervalo para uma tarefa de sessionização de atividade do usuário
Conceitos-chave
- janelas orientadas a dados
- duração do intervalo / timeout
- rajadas de atividade
- sessões por chave
- extensões dinâmicas de janela
Mesclagem de Janelas
A mecânica de mesclagem que faz as janelas de sessão funcionarem: cada elemento inicialmente forma uma proto-janela, depois janelas sobrepostas se mesclam; a mesclagem interage com gatilhos, watermarks e estado
Objetivos
- Descrever como um runner mescla janelas de sessão sobrepostas
- Explicar por que a mesclagem complica o tratamento de estado e gatilhos
Conceitos-chave
- proto-janelas
- mesclagem de janelas sobrepostas
- estado não mesclado versus mesclado
- interação com gatilhos
- recomputação no fim da janela
3 · Tempo e Watermarks4 tópicos
Fundamentos de Watermarks
Uma watermark é uma noção de completude da entrada no tempo do evento: uma afirmação monotônica de que não se espera mais dados com tempo do evento anterior à watermark
Objetivos
- Definir uma watermark como medida de completude no tempo do evento
- Explicar como watermarks permitem ao sistema raciocinar sobre 'concluído' em dados não-limitados
Conceitos-chave
- completude da entrada
- watermark monotônica
- progresso no tempo do evento
- watermark como função do tempo de processamento
- sinal de completude
Watermarks Perfeitas versus Heurísticas
Watermarks perfeitas garantem que não haja dados atrasados, mas exigem conhecimento perfeito da entrada; watermarks heurísticas estimam a completude e podem errar, produzindo dados atrasados que devem ser tratados
Objetivos
- Contrastar watermarks perfeitas e heurísticas e seus modos de falha
- Raciocinar sobre o compromisso latência/correção que uma watermark heurística implica
Conceitos-chave
- watermark perfeita
- watermark heurística
- watermark rápida demais causa dados atrasados
- watermark lenta demais aumenta a latência
- compromisso entre completude e latência
Propagação de Watermarks
Como as watermarks fluem por um pipeline de múltiplos estágios: watermarks de entrada/saída por estágio, o mínimo entre entradas e entre chaves/shards, e como a fonte mais lenta limita o progresso geral
Objetivos
- Rastrear como uma watermark se propaga pelos estágios do pipeline
- Explicar por que a entrada mais lenta limita a watermark de todo o pipeline
Conceitos-chave
- watermarks de entrada e saída
- mínimo entre entradas
- watermarks por estágio
- stragglers limitam o progresso
- atraso da watermark
Desvio e Latência de Watermark
Diagnosticar a saúde do pipeline via desvio (skew) da watermark (o quanto a watermark fica atrás do tempo real) e a interação entre completude, latência e watermarks travadas por stragglers ou fontes lentas
Objetivos
- Diagnosticar uma watermark travada ou atrasada em um pipeline em execução
- Decidir entre confiar na watermark ou ajustar o tratamento de fontes ociosas
Conceitos-chave
- atraso/desvio da watermark
- watermark travada
- partições stragglers
- avanço de fonte ociosa
- latência versus completude
4 · Gatilhos e Acumulação5 tópicos
Gatilhos por Tempo do Evento
Gatilhos que disparam quando a watermark ultrapassa o fim de uma janela, materializando um único resultado pontual quando a completude no tempo do evento é alcançada
Objetivos
- Explicar quando um gatilho por tempo do evento (watermark) dispara
- Usar um gatilho por tempo do evento para emitir um resultado completo por janela
Conceitos-chave
- gatilho no fim da janela
- disparo orientado pela watermark
- painel pontual
- um resultado por janela
- completude em primeiro lugar
Gatilhos por Tempo de Processamento
Gatilhos que disparam em intervalos de tempo de processamento (por exemplo, a cada N segundos) para entregar resultados parciais de baixa latência e atualizados regularmente, independentemente da completude
Objetivos
- Explicar como gatilhos por tempo de processamento produzem resultados antecipados/especulativos
- Escolher um período de gatilho por tempo de processamento para uma meta de latência
Conceitos-chave
- disparo periódico no tempo de processamento
- resultados parciais repetidos
- atualizações de baixa latência
- atrasos alinhados versus não alinhados
- painéis especulativos
Gatilhos Orientados a Dados
Gatilhos que disparam com base em propriedades dos dados acumulados em uma janela, como uma contagem de elementos ou um limite de tamanho, em vez de com base no tempo
Objetivos
- Descrever quando um gatilho orientado a dados é apropriado
- Explicar as limitações de gatilhos por contagem sobre dados não-limitados
Conceitos-chave
- gatilhos por contagem
- limites por propriedade dos dados
- disparo não baseado em tempo
- limitações de gatilhos orientados a dados
- combinação com gatilhos de tempo
Gatilhos Compostos
Combinar gatilhos para expressar políticas realistas: disparos especulativos antecipados no tempo de processamento, um disparo pontual na watermark e disparos atrasados conforme dados atrasados chegam (o padrão antecipado/pontual/atrasado)
Objetivos
- Projetar um gatilho composto antecipado/pontual/atrasado para um requisito
- Raciocinar sobre como gatilhos compostos equilibram latência e completude
Conceitos-chave
- padrão antecipado / pontual / atrasado
- composição de gatilhos
- balancear latência e completude
- sequenciamento de gatilhos
- política de refinamento
Modos de Acumulação
Como disparos sucessivos de painéis se relacionam: descartar (deltas), acumular (sobrescritas cumulativas) e acumular-e-retratar (emite uma retratação do valor anterior mais o novo valor)
Objetivos
- Distinguir os modos descartar, acumular e acumular-e-retratar
- Escolher um modo de acumulação com base em como o destino a jusante combina os painéis
Conceitos-chave
- modo descartar
- modo acumular
- modo acumular-e-retratar
- retratações
- semântica do consumidor a jusante
5 · Correção e Estado4 tópicos
Tratamento de Dados Atrasados
Tratar dados que chegam depois que a watermark ultrapassou o fim de sua janela (dados atrasados), o que ocorre sempre que uma watermark heurística avança de forma agressiva demais
Objetivos
- Explicar por que surgem dados atrasados e como gatilhos atrasados os incorporam
- Decidir entre descartar ou processar registros atrasados para um caso de uso
Conceitos-chave
- definição de dados atrasados
- disparos atrasados
- descartar versus incorporar dados atrasados
- consequências da watermark heurística
- recuperação de correção
Atraso Permitido e Coleta de Lixo
O horizonte de atraso permitido limita por quanto tempo, além da watermark, o estado da janela é retido para que dados atrasados ainda possam ser processados; além dele, o estado é coletado e dados posteriores são descartados
Objetivos
- Explicar como o atraso permitido limita a retenção de estado
- Escolher um valor de atraso permitido equilibrando correção e custo de estado
Conceitos-chave
- horizonte de atraso permitido
- retenção de estado versus custo
- coleta de lixo de janelas
- painel final na coleta de lixo
- estado limitado versus ilimitado
Processamento Exatamente-Uma-Vez
Alcançar semântica de saída efetivamente-uma-vez apesar de novas tentativas e falhas, por meio de operações determinísticas, checkpointing, destinos idempotentes ou transacionais e deduplicação
Objetivos
- Explicar como exatamente-uma-vez é alcançado apesar de retentativas e falhas
- Identificar as propriedades de destino e operação que exatamente-uma-vez exige
Conceitos-chave
- ao-menos-uma-vez versus no-máximo-uma-vez versus exatamente-uma-vez
- efetivamente-uma-vez
- checkpointing
- destinos idempotentes / transacionais
- operações determinísticas e deduplicação
Processamento com Estado e Temporizadores
Primitivas gerais de processamento com estado — estado persistente por chave e temporizadores por tempo do evento/tempo de processamento — que fundamentam janelamento, junções e agregações incrementais customizadas
Objetivos
- Descrever como estado persistente e temporizadores generalizam o janelamento
- Projetar uma operação com estado customizada usando temporizadores e estado por chave
Conceitos-chave
- estado persistente por chave
- temporizadores por tempo do evento e tempo de processamento
- combinação incremental versus bufferização bruta
- estado como fundamento do janelamento
- junções como operações com estado
6 · Arquitetura de Streaming3 tópicos
O Modelo Beam/Dataflow
O modelo unificado Beam/Dataflow que separa as perguntas o quê/onde/quando/como do runner, permitindo que um único pipeline execute em batch ou streaming entre engines com semântica consistente
Objetivos
- Explicar como o modelo Beam desacopla a semântica da engine de execução
- Articular como um único pipeline executa tanto em modo batch quanto em streaming
Conceitos-chave
- separação pipeline / runner
- PCollections e PTransforms
- portabilidade entre engines
- batch + streaming unificados
- modelo independente da execução
Arquiteturas Lambda versus Kappa
A arquitetura Lambda executa camadas batch e de velocidade em paralelo e as reconcilia; a Kappa serve todas as consultas a partir de uma única camada de streaming reproduzível. O argumento semântico por um único sistema de streaming
Objetivos
- Contrastar as arquiteturas Lambda e Kappa e seus custos
- Argumentar quando uma única camada de streaming dispensa uma camada batch separada
Conceitos-chave
- camadas batch + velocidade do Lambda
- reconciliação / camada de serviço
- camada única de streaming do Kappa
- reprocessamento via replay
- compromissos de complexidade operacional
Teoria de Streams e Tabelas
A visão mais profunda de streams e tabelas que reformula todo o modelo: agrupamento/gatilhos transformam um stream em tabela e o desagrupamento transforma uma tabela em stream, unificando batch, streaming, SQL e junções
Objetivos
- Reformular janelamento e gatilhos em termos de streams e tabelas
- Explicar como a teoria unifica SQL, batch e junções de streaming
Conceitos-chave
- tudo são streams e tabelas
- agrupamento/desagrupamento como operações centrais
- gatilhos fazem a ponte das tabelas de volta aos streams
- SQL de streaming e relações que variam no tempo
- junções stream/stream e stream/tabela
Níveis: Júnior, Pleno, Sênior e Especialista
Explique com suas palavras
Corrigido por IA · sem cadastro · 1 perguntaSem alternativas para chutar: você escreve, a IA corrige com a rubrica do tópico e diz em que nível sua resposta está.
Já estuda Sistemas de Streaming?
A avaliação mede tópico por tópico, e o plano pula o que você já sabe.
Aberto para ler. A conta só é necessária para ser medido.
Perguntas frequentes
Por onde começar a estudar Sistemas de Streaming?
Comece por Fundamentos de Streaming: Batch versus Streaming, Dados Não-Limitados e Dualidade Stream/Tabela. O mapa ordena os tópicos pelo que depende de quê, então cada um prepara o seguinte.
Quanto tempo leva uma avaliação completa de Sistemas de Streaming?
Uma avaliação completa desta trilha leva cerca de 55 minutos. O tempo de estudo depende de onde você começa; o diagnóstico mostra quais tópicos você pode pular.
Preciso de conta para usar esta página?
Não. O mapa, os objetivos e os conceitos-chave são abertos. A conta só é necessária para ser medido, ver seu gap por tópico e receber um plano.