[
https://issues.apache.org/jira/browse/KAFKA-3430?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Guozhang Wang updated KAFKA-3430:
---------------------------------
Description:
Currently KTable.toStream does not take any parameters and hence users who
wants to set the key need to do two steps:
{code}table.toStream().map(...){code} in order to do so. We can make it in one
step by providing the mapper parameter in toStream.
And similarly today users usually need to call {code} KStream.map() {code} in
order to select the key before aggregation-by-key operation if the original
stream is does not contain keys.
We can consider adding a specific function in KStream to do so:
{code}KStream.selectKey(mapper){code}
which essential is the same as
{code}KStream.map(/* mapper that does not change the value, but only the key
*/){code}
was:
Currently KTable.toStream does not take any parameters and hence users who
wants to set the key need to do two steps:
{code}table.toStream().map(...){code} in order to do so. We can make it in one
step by providing the mapper parameter in toStream.
And similarly today users usually need to call {code} KStream.map() {code} in
order to select the key before aggregation-by-key operation if the original
stream is does not contain keys. We can consider adding a specific function in
KStream to do so:
{code}KStream.selectKey(mapper){code}
which essential is the same as
{code}KStream.map(mapper, value){code}
> Allow users to set key in KTable.toStream() and KStream
> -------------------------------------------------------
>
> Key: KAFKA-3430
> URL: https://issues.apache.org/jira/browse/KAFKA-3430
> Project: Kafka
> Issue Type: Sub-task
> Reporter: Guozhang Wang
> Fix For: 0.10.0.1
>
>
> Currently KTable.toStream does not take any parameters and hence users who
> wants to set the key need to do two steps:
> {code}table.toStream().map(...){code} in order to do so. We can make it in
> one step by providing the mapper parameter in toStream.
> And similarly today users usually need to call {code} KStream.map() {code} in
> order to select the key before aggregation-by-key operation if the original
> stream is does not contain keys.
> We can consider adding a specific function in KStream to do so:
> {code}KStream.selectKey(mapper){code}
> which essential is the same as
> {code}KStream.map(/* mapper that does not change the value, but only the key
> */){code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)