Kinesis 데이터 스트림의 업스트림 또는 소스 조절 - Managed Service for Apache Flink

Amazon Managed Service for Apache Flink는 이전에 Amazon Kinesis Data Analytics for Apache Flink로 알려졌습니다.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Kinesis 데이터 스트림의 업스트림 또는 소스 조절

증상: 애플리케이션이 업스트림 소스 Kinesis 데이터 스트림에서 LimitExceededExceptions을 발견합니다.

잠재적 원인: Apache Flink 라이브러리 Kinesis 커넥터의 기본 설정이 Kinesis 데이터 스트림 소스에서 읽도록 설정되어 있으며, GetRecords 호출당 인출되는 최대 레코드 수에 대해 매우 엄격한 기본 설정이 사용됩니다. 샤드당 레코드 수는 1,000개에 불과하지만 Apache Flink는 기본적으로 GetRecords 호출당 10,000개의 레코드를 가져오도록 구성되어 있습니다 (이 호출은 기본적으로 200ms마다 수행됨).

이 기본 동작으로 인해 Kinesis 데이터 스트림을 사용하려고 할 때 병목 현상이 발생하여 애플리케이션 성능 및 안정성에 영향을 미칠 수 있습니다.

CloudWatch ReadProvisionedThroughputExceeded지표를 확인하고 이 지표가 0보다 큰 장기간 또는 지속 기간을 확인하면 이를 확인할 수 있습니다.

계속되는 오류를 관찰하여 Apache Flink용 Amazon 관리형 서비스 애플리케이션의 CloudWatch 로그에서도 이를 확인할 수 있습니다. LimitExceededException

해결 방법: 다음 두 가지 중 하나를 수행하여 이 시나리오를 해결할 수 있습니다.

  • 통화당 불러오는 레코드 수의 기본 한도를 낮추십시오. GetRecords

  • Apache Flink용 Amazon 매니지드 서비스 애플리케이션에서 적응형 읽기를 활성화하십시오. 적응형 읽기 기능에 대한 자세한 내용을 알아보려면 SHARD_USE_ADAPTIVE_READS를 참조하십시오.