Also, if it wasn't clear, I'll be happy to provide committer support on
reviewing and merging this FLIP, if it gets approved :)

On Mon, Jun 29, 2020 at 12:12 PM Tzu-Li (Gordon) Tai <tzuli...@apache.org>
wrote:

> Hi Cranmer,
>
> Thank you for proposing the feature and starting the discussion thread.
> This is really great work!
>
> Overall, +1 to adding EFO support to the Kinesis connector.
> I can see that having a dedicated throughput quota for each consuming
> Flink application is definitely a requirement for AWS users.
> In the past, we worked around this by using adaptive polling to avoid
> exceeding the quotas with multiple consumers, this would probably go away
> with this implemented.
>
> There are a few things I like about the current proposal:
> - EFO is an opt-in feature for now. Once we decide to reimplement the
> Kinesis connector on top of the new source interface (FLIP-27), we can
> probably consider enabling EFO by default to match the defaults of the
> higher-level KCL library.
> - From the design, it seems like the changes can indeed be fairly
> consolidated in the Kinesis connector. The change should be fairly safe as
> well, since we're essentially abstracting record publishing concerns only,
> which is transparent to the exactly-once semantics / watermark components.
>
> Concerning competing stream consumer de-/registration:
> this would most likely go away with the new source interface, where this
> can be done on the source split enumerator.
> I'm personally okay with the proposed strategy of competing with backoff.
> As food for thought, have you considered an opt-in / opt-out, where the
> user knows that the client has access to KDS, and can choose to register
> once only on the client side instead of competing in TMs?
> I'm not sure if this is worth the extra configuration complexity though.
>
> For the concrete next steps for implementation after this FLIP has passed:
> From the FLIP I can conclude that implementation wise, this would come in
> a few steps -
> 1. Abstract away record publishing behind a new interface. Initially we
> only have one implementation (the current polling mechanism).
> 2. Add in AWS SDK 2.x dependency, with a new FanOutKinesisProxy
> implementation.
> 3. Add FanOutRecordPublisher to finalize EFO support.
>
> I think step 2. wasn't explicitly mentioned in the FLIP, but I strongly
> suggest to consolidate that step as a single PR, as we would need to do a
> license check for dependency changes and it would be nice to move forward
> with that with at least interference of code changes as possible.
>
> Pushing this FLIP forward for approval:
> Since this FLIP is a fairly consolidated change, we should be safe to
> proceed with a vote soon.
> That usually happens in a separate vote thread, linking to this discussion
> thread.
>
> cc'ing Thomas Weise as well, as he has also worked substantially on the
> Kinesis connector in the past.
>
> Cheers,
> Gordon
>
> On Tue, Jun 23, 2020 at 6:02 PM hey_wxl <xiaolong.w...@smartnews.com>
> wrote:
>
>> Hi, Cranmer.
>>
>>    I'm Roland Wang. I've read the FLIP you wrote, and agree with your
>> design.
>>    Recently, I'm working on this feature too, and have made some progress:
>>
>>    1. I add two methods: getOrRegisterConsumer & subscribeToShard on
>> KinesisProxyInterface.
>>    2. I re-implement the KinesisProxy using AWS SDK V2.x.
>>    3. I use the new KinesisProxy to implement ShardConsumer.
>>
>>    Though my design is not fully considered, I hope we can discuss a
>> little
>> bit about this feature. I wish to make some contribution to the community.
>>
>>
>>
>>
>> --
>> Sent from:
>> http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/
>>
>

Reply via email to