[ 
https://issues.apache.org/jira/browse/KAFKA-4217?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15560348#comment-15560348
 ] 

Guozhang Wang commented on KAFKA-4217:
--------------------------------------

We designed {{process()}} to be differentiated from {{transform()}} such that 
{{process}} is used as the "end point" of the topology, returning no new data, 
whereas {{transform}} used as connection point of the topology.

I think it is reasonable to extend {{Transformer.transform}} and 
{{Transformer.punctuate}} to return a list of {{R}} typed values.

> KStream.transform equivalent of flatMap
> ---------------------------------------
>
>                 Key: KAFKA-4217
>                 URL: https://issues.apache.org/jira/browse/KAFKA-4217
>             Project: Kafka
>          Issue Type: Improvement
>          Components: streams
>    Affects Versions: 0.10.0.1
>            Reporter: Elias Levy
>            Assignee: Guozhang Wang
>
> {{KStream.transform}} gives you access to state stores while allowing you to 
> return zero or one transformed {{KeyValue}}.  Alas, it is unclear what method 
> you should use if you want to access state stores and return zero or multiple 
> {{KeyValue}}.  Presumably you can use {{transform}}, always return {{null}}, 
> and use {{ProcessorContext.forward}} to emit {{KeyValues}}.
> It may be good to introduce a {{transform}}-like {{flatMap}} equivalent, or 
> allow store access from other {{KStream}} methods, such as {{flatMap}} itself.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to