Carregar e processar dados de forma incremental com os fluxos do oleoduto Lakeflow

Os dados são processados em cadeias de processamento por meio de fluxos. Cada fluxo consiste em uma consulta e, normalmente, um destino. O fluxo processa a consulta, seja como um lote ou incrementalmente como um fluxo de dados para o destino. Um fluxo reside dentro de um oleoduto Lakeflow.

Normalmente, os fluxos são definidos automaticamente quando você cria uma consulta em um pipeline que atualiza um destino, mas também é possível definir explicitamente fluxos adicionais para processamento mais complexo, como anexar a um único destino a partir de várias fontes.

Atualizações

Um fluxo é executado cada vez que o pipeline que o define é atualizado. O fluxo criará ou atualizará tabelas com os dados mais recentes disponíveis. Dependendo do tipo de fluxo e do estado das alterações nos dados, a atualização pode executar uma atualização incremental, que processa apenas novos registros, ou executar uma atualização completa, que reprocessa todos os registros da fonte de dados.

Fluxos padrão e fluxos adicionais

Quando cria uma consulta num pipeline que atualiza um alvo, um fluxo padrão é definido automaticamente. Para uma tabela de streaming, o fluxo predefinido é um fluxo append que adiciona novas linhas a cada atualização e tem o mesmo nome que o destino. Criar um fluxo e o respetivo destino numa única etapa é a forma mais comum de utilizar pipelines, e pode fazê-lo para importar ou transformar dados.

Também pode definir fluxos separadamente de um alvo, o que permite que múltiplos fluxos adicionem dados a um único alvo. Isto é útil quando precisa:

  • Adicione fontes de streaming que acrescentam dados a uma tabela de streaming existente sem exigir uma atualização integral.
  • Preenche uma tabela de streaming com dados históricos em falta.
  • Combine dados de várias fontes sem usar uma UNION cláusula.

Para obter exemplos de como criar fluxos predefinidos e explícitos, consulte Utilizar fluxos nos pipelines do Lakeflow.

Tipos de escoamentos

Os fluxos padrão para tabelas de streaming e visões materializadas são fluxos de acréscimo. Você também pode criar fluxos para ler a partir de fontes de dados de captura de dados de mudança. A tabela a seguir descreve os diferentes tipos de fluxos.

Tipo de fluxo Description
Anexar Os fluxos de acréscimo são o tipo mais comum de fluxo, onde novos registros na origem são gravados no destino a cada atualização. Eles correspondem ao modo de adição em streaming estruturado. Você pode adicionar o ONCE flag, indicando uma consulta por lote cujos dados devem ser inseridos no destino apenas uma vez, a menos que o destino seja totalmente atualizado. Qualquer número de fluxos de anexação pode gravar num destino específico.
Os fluxos padrão (criados com a tabela de streaming de destino ou a exibição materializada) terão o mesmo nome que o destino. Outros alvos não têm fluxos padrão.
Auto CDC (anteriormente aplicar alterações) Um fluxo CDC automático ingere uma consulta que contém dados de captura de dados de alteração (CDC). Os fluxos CDC automáticos só podem destinar-se a tabelas de streaming, e a origem deve ser streaming (mesmo no caso de fluxos ONCE). Vários fluxos CDC automáticos podem ter como alvo uma única tabela de streaming. Uma tabela de streaming que serve como destino para um fluxo CDC automático só pode ser direcionada por outros fluxos CDC automáticos.
Para obter mais informações sobre dados CDC, consulte The AUTO CDC APIs: Simplify change data capture with pipelines.
Atualização (Pré-visualização Pública) Os fluxos de atualização produzem agregados globais de streaming, sem marca de água, para um sumidouro, emitindo apenas os registos que mudaram em cada lote.
Os fluxos de atualização estão disponíveis apenas em Python. Veja update_flow.

Recursos adicionais

Para obter mais informações sobre fluxos e seu uso, consulte os seguintes tópicos: