As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Use os conectores do Apache Flink com o Managed Service for Apache Flink
Os conectores do Apache Flink são componentes de software que movem dados para dentro e para fora de um aplicativo do Amazon Managed Service for Apache Flink. Os conectores são integrações flexíveis que permitem a leitura de arquivos e diretórios. Os conectores consistem em módulos completos para interagir com os serviços da Amazon e sistemas de terceiros.
Os tipos de conectores incluem o seguinte:
Fontes: forneça dados para seu aplicativo a partir de um fluxo de dados do Kinesis, arquivo, tópico do Apache Kafka ou de outras fontes de dados.
-
Coletores: envie dados do seu aplicativo para um fluxo de dados do Kinesis, fluxo do Firehose, tópico do Apache Kafka ou outros destinos de dados.
-
E/S assíncrona: fornece acesso assíncrono a uma fonte de dados como um banco de dados para enriquecer os fluxos.
Os conectores do Apache Flink são armazenados em seus próprios repositórios de origem. A versão e o artefato dos conectores Apache Flink mudam dependendo da versão do Apache Flink que você está usando e se você está usando a API DataStream, Tabela ou SQL.
O Amazon Managed Service for Apache Flink oferece suporte a mais de 40 conectores de origem e coletor pré-construídos do Apache Flink. A tabela a seguir apresenta um resumo dos conectores mais populares e das versões associadas. Também é possível criar coletores personalizados usando a estrutura Async-sink. Para obter mais informações, consulte o título The Generic Asynchronous Base Sink
Para acessar o repositório dos AWS conectores Apache Flink, consulte. flink-connector-aws
Conectores para Flink 2.2
Ao atualizar para o Flink 2.2, você precisa atualizar as dependências do conector para versões compatíveis com o tempo de execução do Flink 2.x. Os conectores Flink são lançados independentemente do tempo de execução do Flink, e nem todos os conectores têm uma versão compatível com o Flink 2.x ainda. A tabela a seguir resume a disponibilidade dos conectores comumente usados no Amazon Managed Service para Apache Flink até o momento em que este artigo foi escrito:
| Conector | Versão Flink 2.0+ | Observações |
|---|---|---|
| Apache Kafka | flink-connector-kafka 4.0.0-2.0 | Recomendado para o Flink 2.2 |
| Kinesis Data Streams (fonte) | flink-connector-aws-kinesis-streams 6.0.0-2.0 | Recomendado para o Flink 2.2 |
| Kinesis Data Streams (coletor) | flink-connector-aws-kinesis-streams 6.0.0-2.0 | Recomendado para o Flink 2.2 |
| FileSystem (S3, HDFS) | Empacotado com o Flink | Integrado à distribuição do Flink — sempre disponível |
| JDBC | Ainda não foi lançado para 2.x | Nenhuma versão compatível com o Flink 2.x disponível |
| OpenSearch | Ainda não foi lançado para 2.x | Nenhuma versão compatível com o Flink 2.x disponível |
| Elasticsearch | Ainda não foi lançado para 2.x | Considere migrar para o conector OpenSearch |
| Amazon Managed Service for Prometheus | Ainda não foi lançado para 2.x | Nenhuma versão compatível com o Flink 2.x no momento em que este artigo foi escrito |
Se seu aplicativo depende de um conector que ainda não tem uma versão 2.2 do Flink, você tem duas opções: esperar que o conector lance uma versão compatível ou avaliar se você pode substituí-lo por uma alternativa (por exemplo, usando o catálogo JDBC ou um coletor personalizado).
Problemas conhecidos
Os aplicativos que usam o caminho
KinesisStreamsSourcewith EFO (Enhanced Fan-Out/ SubscribeToShard) introduzido nos conectores v5.0.0 e v6.0.0 podem falhar quando os streams do Kinesis são refragmentados. Esse é um problema conhecido na comunidade. Para obter mais informações, consulte FLINK-37648. Os aplicativos que usam o caminho
KinesisStreamsSourcecom EFO (Enhanced Fan-Out/ SubscribeToShard) introduzido nos conectores v5.0.0 e v6.0.0KinesisStreamsSinkpodem enfrentar impasses se o aplicativo Flink estiver sob contrapressão, resultando na interrupção completa do processamento de dados em um ou mais. TaskManagers Uma operação de parada forçada e uma operação de inicialização do aplicativo são necessárias para recuperar o aplicativo. Este é um subcaso do problema conhecido na comunidade: FLINK-34071.
Conectores para versões mais antigas do Flink
| Conector | Flink versão 1.15 | Flink versão 1.18 | Flink versões 1.19 | Flink versões 1.20 |
|---|---|---|---|---|
| Kinesis Data Stream — API de origem DataStream e tabela | flink-connector-kinesis, 1.15.4 | flink-connector-kinesis, 4.3.0-1.18 | flink-connector-kinesis, 5.0.0-1.19 | flink-connector-kinesis, 5.0.0-1.20 |
| Kinesis Data Stream — Sink — DataStream e API de tabelas | flink-connector-aws-kinesis-streams, 1.15.4 | flink-connector-aws-kinesis-streams, 4.3.0-1.18 | flink-connector-aws-kinesis-streams, 5.0.0-1.19 | flink-connector-aws-kinesis-streams, 5.0.0-1.20 |
| Kinesis Data Source/Sink Streams - - SQL | flink-sql-connector-kinesis, 1.15.4 | flink-sql-connector-kinesis, 4.3.0-1.18 | flink-sql-connector-kinesis, 5.0.0-1.19 | flink-sql-connector-kinesis-streams, 5.0.0-1.20 |
| Kafka - DataStream e API de tabela | flink-connector-kafka, 1.15.4 | flink-connector-kafka, 3.2.0-1.18 | flink-connector-kafka, 3.3.0-1.19 | flink-connector-kafka, 3.3.0-1.20 |
| Kafka - SQL | flink-sql-connector-kafka, 1.15.4 | flink-sql-connector-kafka, 3.2.0-1.18 | flink-sql-connector-kafka, 3.3.0-1.19 | flink-sql-connector-kafka, 3.3.0-1.20 |
| Firehose - DataStream e API de tabelas | flink-connector-aws-kinesis- mangueira de incêndio, 1.15.4 | flink-connector-aws-firehose, 4.3.0-1.18 | flink-connector-aws-firehose, 5.0.0-1.19 | flink-connector-aws-firehose, 5.0.0-1.20 |
| Firehose - SQL | flink-sql-connector-aws-kinesis-firemangueira, 1.15.4 | flink-sql-connector-aws-mangueira de incêndio, 4.3.0-1.18 | flink-sql-connector-aws-mangueira de incêndio, 5.0.0-1.19 | flink-sql-connector-aws-mangueira de incêndio, 5.0.0-1.20 |
| DynamoDB DataStream — e API de tabelas | flink-connector-dynamodb, 3.0.0-1.15 | flink-connector-dynamodb, 4.3.0-1.18 | flink-connector-dynamodb, 5.0.0-1.19 | flink-connector-dynamodb, 5.0.0-1.20 |
| DynamoDB - SQL | flink-sql-connector-dynamodb, 3.0.0-1.15 | flink-sql-connector-dynamodb, 4.3.0-1.18 | flink-sql-connector-dynamodb, 5.0.0-1.19 | flink-sql-connector-dynamodb, 5.0.0-1.20 |
| OpenSearch - DataStream e API de tabela | - | flink-connector-opensearch, 1.2.0-1.18 | flink-connector-opensearch, 1.2.0-1.19 | flink-connector-opensearch, 1.2.0-1.19 |
| OpenSearch - SQL | - | flink-sql-connector-opensearch, 1.2.0-1.18 | flink-sql-connector-opensearch, 1.2.0-1.19 | flink-sql-connector-opensearch, 1.2.0-1.19 |
| Amazon Managed Service para Prometheus DataStream | - | flink-sql-connector-opensearch, 1.2.0-1.18 | flink-connector-prometheus, 1.0.0-1.19 | flink-connector-prometheus, 1,0,0-1,20 |
| Amazon SQS DataStream e API de tabelas | - | flink-sql-connector-opensearch, 1.2.0-1.18 | flink-connector-sqs, 5.0.0-1.19 | flink-connector-sqs, 5.0.0-1.20 |
Para saber mais sobre conectores no Amazon Managed Service for Apache Flink, consulte:
Problemas conhecidos
Há um problema conhecido do Apache Flink de código aberto com o conector Apache Kafka no Apache Flink versão 1.15. Esse problema foi resolvido em versões posteriores do Apache Flink.
Para obter mais informações, consulte Problemas conhecidos.