Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-7223

Increase DEFAULT_SHARD_DISCOVERY_INTERVAL_MILLIS for Flink-kinesis-connector

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Won't Fix
    • 1.3.0
    • 1.4.0
    • Connectors / Kinesis
    • None

    Description

      Background: DEFAULT_SHARD_DISCOVERY_INTERVAL_MILLIS in org.apache.flink.streaming.connectors.kinesis.config.ConsumerConfigConstants is the default value for Flink to call Kinesis's describeStream() API.

      Problem: Right now, its value is 10,000millis (10sec), which is too short. We ran into problems that Flink-kinesis-connector's call of describeStream() exceeds Kinesis rate limit, and broken Flink taskmanager.

      According to http://docs.aws.amazon.com/kinesis/latest/APIReference/API_DescribeStream.html,
      "This operation has a limit of 10 transactions per second per account.". What it means is that the 10transaction/account is a limit on a single organization's AWS account...... We contacted AWS Support, and confirmed this. If you have more applications (either other Flink apps or non-Flink apps) competing aggressively with your Flink app on this API, your Flink app breaks.

      I propose increasing the value DEFAULT_SHARD_DISCOVERY_INTERVAL_MILLIS from 10,000millis(10sec) to preferably 300,000 (5min). Or at least 60,000 (1min) if anyone has a solid reason arguing that 5min is too long,

      This is also related to https://issues.apache.org/jira/browse/FLINK-6365

      Attachments

        Activity

          People

            phoenixjiangnan Bowen Li
            phoenixjiangnan Bowen Li
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: