Compartilhar via


O que é o Apache Flink® no Azure HDInsight no AKS? (Versão prévia)

Importante

O Azure HDInsight no AKS se aposentou em 31 de janeiro de 2025. Saiba mais com este comunicado.

Você precisa migrar suas cargas de trabalho para microsoft fabric ou um produto equivalente do Azure para evitar o encerramento abrupto de suas cargas de trabalho.

Importante

Esse recurso está atualmente em versão prévia. Os termos de uso complementares para o Microsoft Azure Previews incluem mais termos legais que se aplicam aos recursos do Azure que estão em versão beta, em versão prévia ou ainda não lançados em disponibilidade geral. Para obter informações sobre essa versão prévia específica, consulte Azure HDInsight em informações de visualização do AKS. Para perguntas ou sugestões de recursos, envie uma solicitação no AskHDInsight com os detalhes e siga-nos para mais atualizações sobre a Comunidade do Azure HDInsight .

o Apache Flink é um framework e um mecanismo de processamento distribuído para cálculos com estado em fluxos de dados infinitos e finitos. O Flink foi projetado para ser executado em todos os ambientes de cluster comuns, realizar cálculos e aplicativos de streaming com estado à velocidade de processamento em memória e em qualquer escala. Os aplicativos são paralelizados em possivelmente milhares de tarefas distribuídas e executadas simultaneamente em um cluster. Portanto, um aplicativo pode usar quantidades ilimitadas de vCPUs, memória principal, disco e E/S de rede. Além disso, o Flink mantém facilmente um estado de aplicativo grande. Seu algoritmo de ponto de verificação assíncrono e incremental garante uma influência mínima nas latências de processamento, garantindo exatamente uma vez a consistência do estado.

O Apache Flink é um mecanismo de análise massivamente escalonável para processamento de fluxo.

Alguns dos principais recursos que o Flink oferece são:

  • Operações em fluxos limitados e ilimitados
  • No desempenho de memória
  • Capacidade para cálculos em lote e em streaming
  • Baixa latência, operações de alta taxa de transferência
  • Processamento exatamente uma vez
  • Alta disponibilidade
  • Tolerância a falhas e estado
  • Totalmente compatível com o ecossistema do Hadoop
  • APIs SQL unificadas para streaming e em lote

diagrama de arquitetura Flink.

O Apache Flink é uma excelente opção para desenvolver e executar muitos tipos diferentes de aplicativos devido ao seu amplo conjunto de recursos. Os recursos do Flink incluem suporte para processamento de fluxos e lotes, gerenciamento sofisticado de estado, semântica de processamento em tempo de evento e garantias de consistência exata de uma vez para o estado. O Flink não tem um único ponto de falha. O Flink tem se mostrado capaz de escalar para milhares de núcleos e terabytes de estado de aplicação, fornece alto desempenho e baixa latência, e impulsiona alguns dos aplicativos de processamento de fluxo mais exigentes do mundo.

  • de detecção de fraude: o Flink pode ser usado para detectar transações ou atividades fraudulentas em tempo real aplicando regras complexas e modelos de machine learning em dados de streaming.
  • de detecção de anomalias: o Flink pode ser usado para identificar exceções ou padrões anormais em dados de streaming, como leituras de sensor, tráfego de rede ou comportamento do usuário.
  • Sistema de alerta baseado em regra: Flink pode ser usado para acionar alertas ou notificações com base em condições ou limites predefinidos em dados de fluxo contínuo, como temperatura, pressão ou preços das ações.
  • Monitoramento de processos empresariais: Flink pode ser usado para acompanhar e analisar o status e o desempenho de processos de negócios ou fluxos de trabalho em tempo real, como cumprimento de pedidos, entrega ou atendimento ao cliente.
  • aplicativo Web (rede social): o Flink pode ser usado para alimentar aplicativos Web que exigem processamento em tempo real de dados gerados pelo usuário, como mensagens, curtidas, comentários ou recomendações.

Leia mais sobre casos de uso comuns descritos em casos de uso do Apache Flink

Os clusters do Apache Flink no HDInsight no AKS são um serviço totalmente gerenciado. Os benefícios de criar um cluster Flink no HDInsight no AKS estão listados aqui.

Característica Descrição
Facilidade de criação Você pode criar um novo cluster Flink no HDInsight em minutos usando o portal do Azure, o Azure PowerShell ou o SDK. Consulte Introdução ao cluster Apache Flink no HDInsight no AKS.
Facilidade de uso Os clusters Flink no HDInsight no AKS incluem o gerenciamento de configuração por meio de portal e o ajuste de escala. Além disso, com a API de gerenciamento de trabalho, você usa a API REST ou o portal do Azure para gerenciamento de trabalhos.
REST APIs Os clusters Flink no HDInsight no AKS incluem a API de gerenciamento de trabalho , que é um método baseado em API REST para envio e monitoramento remoto de trabalhos no portal do Azure.
Tipo de implantação O Flink pode executar aplicativos no modo de sessão ou no modo de aplicativo. Atualmente, o HDInsight no AKS dá suporte apenas a clusters de sessão. Você pode executar vários trabalhos do Flink em um cluster de sessão. O modo aplicativo está no plano de desenvolvimento do HDInsight em clusters do AKS
Suporte para Metastore Os clusters Flink do HDInsight no AKS podem suportar catálogos com Metastore do Hive em diferentes formatos de arquivo aberto com pontos de verificação remotos no Azure Data Lake Storage Gen2.
Suporte para o Armazenamento do Azure Os clusters Flink no HDInsight podem usar o Azure Data Lake Storage Gen2 como coletor de arquivos. Para obter mais informações sobre o Data Lake Storage Gen2, consulte Azure Data Lake Storage Gen2.
Integração com os serviços do Azure O cluster Flink no HDInsight no AKS vem com integração ao Kafka, além de Hubs de Eventos do Azure e Azure HDInsight . Você pode criar aplicativos de streaming usando os Hubs de Eventos ou o HDInsight.
Adaptabilidade O HDInsight no AKS permite escalar os nós do cluster Flink com base em um cronograma usando o recurso de Dimensionamento Automático. Consulte Dimensionar automaticamente o Azure HDInsight em clusters do AKS.
Backend do Estado O HDInsight no AKS usa o RocksDB como backend padrão de estado. O RocksDB é um repositório de chave-valor persistente inserível para armazenamento rápido.
Pontos de verificação O ponto de verificação está habilitado no HDInsight em clusters AKS por padrão. As configurações padrão no HDInsight no AKS mantêm os últimos cinco pontos de verificação no armazenamento persistente. Caso o trabalho falhe, ele pode ser reiniciado do ponto de verificação mais recente.
Pontos de verificação incrementais O RocksDB dá suporte a pontos de verificação incrementais. Incentivamos o uso de pontos de verificação incrementais para um estado grande, você precisa habilitar esse recurso manualmente. Definir um padrão em seu flink-conf.yaml: state.backend.incremental: true habilita pontos de verificação incrementais, a menos que o aplicativo substitua essa configuração no código. Essa instrução é verdadeira por padrão. Como alternativa, você pode configurar esse valor diretamente no código (substitui o padrão de configuração) EmbeddedRocksDBStateBackend` backend = new `EmbeddedRocksDBStateBackend(true); . Por padrão, preservamos os últimos cinco pontos de verificação no diretório configurado. Esse valor pode ser alterado alterando a configuração na seção de gerenciamento de configuração state.checkpoints.num-retained: 5

Os clusters do Apache Flink no HDInsight no AKS incluem os seguintes componentes, eles estão disponíveis nos clusters por padrão.

Consulte o de roteiro do sobre o que está por vir em breve!

O Flink agenda trabalhos usando três componentes distribuídos, Gerenciador de Trabalho, Gerenciador de Tarefas e Cliente de Trabalho, que são definidos em um padrão Leader-Follower.

Flink Job: Um job ou programa Flink consiste em várias tarefas. As tarefas são a unidade básica de execução no Flink. Cada tarefa Flink tem várias instâncias dependendo do nível de paralelismo e cada instância é executada em um TaskManager.

Gerente de trabalho: o Gerenciador de Trabalho atua como agendador e agenda tarefas em gerenciadores de tarefas.

Gerenciador de Tarefas: o Gerenciador de Tarefas vem com um ou mais slots para executar tarefas em paralelo.

de cliente de tarefas: o cliente de tarefas se comunica com o gerente de tarefas para enviar tarefas do Flink

Interface de Usuário Web do Flink: O Flink apresenta uma interface web para inspecionar, monitorar e depurar aplicativos em execução.

Diagrama de Processos Flink mostrando como o Job, o Job Manager, o Task Manager e o Job Client funcionam juntos.

Referência