Pular para o conteúdo

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.

6
módulos
25
tópicos
55
min para avaliar

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 pergunta

Sem alternativas para chutar: você escreve, a IA corrige com a rubrica do tópico e diz em que nível sua resposta está.

0 / 600

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.