[
https://issues.apache.org/jira/browse/FLINK-9610?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16516283#comment-16516283
]
ASF GitHub Bot commented on FLINK-9610:
---------------------------------------
GitHub user nielsbasjes opened a pull request:
https://github.com/apache/flink/pull/6181
[FLINK-9610] [flink-connector-kafka-base] Add Kafka Partitioner that uses
the hash of the provided key.
## What is the purpose of the change
Add the simple feature of being able to route records into Kafka using a
key based partitioning.
## Brief change log
- Added the FlinkKeyHashPartitioner class with some tests.
## Verifying this change
This change added tests and can be verified as follows:
- Use this instead of the FlinkFixedPartitioner while instantiating the
FlinkKafkaProducer. Also add an KeyedSerializationSchema implementation that
returns the right key that is to be used.
## Does this pull request potentially affect one of the following parts:
- Dependencies (does it add or upgrade a dependency): no
- The public API, i.e., is any changed class annotated with
`@Public(Evolving)`: yes
- The serializers: no
- The runtime per-record code paths (performance sensitive): no
- Anything that affects deployment or recovery: JobManager (and its
components), Checkpointing, Yarn/Mesos, ZooKeeper: no
- The S3 file system connector: no
## Documentation
- Does this pull request introduce a new feature? yes
- If yes, how is the feature documented? JavaDocs
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/nielsbasjes/flink KafkaKeyHashPartitioner
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/6181.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #6181
----
commit 22f814cab0710653ec1766531db7077f9e8fd534
Author: Niels Basjes <nbasjes@...>
Date: 2018-06-18T19:16:22Z
[FLINK-9610] Add Kafka Partitioner that uses the hash of the provided key
----
> Add Kafka partitioner that uses the key to partition by
> -------------------------------------------------------
>
> Key: FLINK-9610
> URL: https://issues.apache.org/jira/browse/FLINK-9610
> Project: Flink
> Issue Type: New Feature
> Components: Kafka Connector
> Reporter: Niels Basjes
> Assignee: Niels Basjes
> Priority: Major
>
> The kafka connector package only contains the
> FlinkFixedPartitioner implementation of the FlinkKafkaPartitioner.
> The most common usecase I have seen it the need to spread the records across
> the kafka partitions while keeping all messages with the same key together.
> I'll put up a pull request with a very simple implementation that should make
> this a lot easier for others to use and extend.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)