Il servizio gestito da Amazon per Apache Flink era precedentemente noto come Analisi dei dati Amazon Kinesis per Apache Flink.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Limitazione della larghezza di banda della rete in upstream o all'origine da un flusso di dati Kinesis
Sintomo: l'applicazione riscontra LimitExceededExceptions
dal suo flusso di dati Kinesis di origine in upstream.
Causa potenziale: l'impostazione predefinita per il connettore Kinesis della libreria di Apache Flink per la lettura dall'origine del flusso di dati Kinesis è configurata su un'impostazione predefinita molto aggressiva per il numero massimo di record recuperati per chiamata GetRecords
. Apache Flink è configurato per impostazione predefinita per recuperare 10.000 record per GetRecords
chiamata (questa chiamata viene effettuata di default ogni 200 ms), sebbene il limite per shard sia di soli 1.000 record.
Questo comportamento predefinito può portare a una limitazione della larghezza di banda della rete quando si tenta di utilizzare dati dal flusso di dati Kinesis, il che influisce sulle prestazioni e sulla stabilità dell'applicazione.
Puoi confermarlo controllando la CloudWatch ReadProvisionedThroughputExceeded
metrica e visualizzando i periodi prolungati o sostenuti in cui questa metrica è maggiore di zero.
Puoi anche visualizzarlo nei CloudWatch log della tua applicazione Amazon Managed Service for Apache Flink osservando gli errori continui. LimitExceededException
Risoluzione: puoi fare una delle due cose per risolvere questo scenario:
Ridurre il limite predefinito per il numero di record recuperati per chiamata
GetRecords
Abilita Adaptive Reads nella tua applicazione Amazon Managed Service for Apache Flink. Per ulteriori informazioni sulla funzionalità Adaptive Reads, consultare SHARD_USE_ADAPTIVE_READS