I see. It's great hidden functionality and all you have to do is define a
good API and expose it. I think the easiest thing would be to expose a
first operator, and then add more operators if they are claimed. I think it
is hidden for not complicating the API.

Thank you

El vie., 9 oct. 2020 a las 7:26, Matthias J. Sax (<mj...@apache.org>)
escribió:

> I agree that there are cases when it is useful to get the old and new
> value. In fact, the DSL internally often tracks old and new value via a
> `Change` value type.
>
> We did have some discussion that it might be useful to expose this
> currently internal `Change` type in the public API. But if we do this,
> it would not be limited to a single operator.
>
>
> -Matthias
>
> On 10/8/20 1:41 PM, Javier Freire Riobo wrote:
> > You're right. The behavior is correct with the cache disabled.
> >
> > Anyway I think the operator I propose can be useful. The need to
> generate a
> > value from the previous and current value of a record can be quite
> common.
> > I think the only way to implement it is through an aggregate using a
> helper
> > class. It is simpler and more natural to be able to receive the previous
> > and current values in a function.
> >
> > Anyway thank you very much. I have been working with Kafka for a short
> > time, but I find it an amazing tool. Congratulations.
> >
> > El jue., 8 oct. 2020 a las 21:10, Matthias J. Sax (<mj...@apache.org>)
> > escribió:
> >
> >> I guess I understand now.
> >>
> >> However, it seems to be an "issue" with record caching. Setting the
> >> commit interval to zero would flush the cache each time, but it is not
> >> the "right" config change. You should just disable the `KTable` cache
> >> instead.
> >>
> >> You can disable caching globally by setting `cache.max.bytes.buffering`
> >> configuration parameter to zero.
> >>
> >> Or you can disable caching for an individual KTable via
> >> `Materialized#withCachingDisabled()` that you can pass into your
> >> `aggregation()` operator.
> >>
> >> Thus, overall, I don't see the need for a new operator.
> >>
> >>
> >> -Matthias
> >>
> >>
> >> On 10/7/20 1:51 PM, Javier Freire Riobo wrote:
> >>> I have done a small demo example. I hope it serves as a clarification.
> >>>
> >>> https://github.com/javierfreire/KTableToKStreamTest
> >>>
> >>> Thank you very much
> >>>
> >>> El mié., 7 oct. 2020 a las 3:01, Matthias J. Sax (<mj...@apache.org>)
> >>> escribió:
> >>>
> >>>> Thanks for the KIP.
> >>>>
> >>>> I am not sure if I understand the motivation. In particular the KIP
> >> says:
> >>>>
> >>>>> The main problem, apart from needing more code, is that if the same
> >>>> event is received twice at the same time and the commit time is not 0,
> >> the
> >>>> difference is deleted and nothing is emitted.
> >>>>
> >>>> Can you elaborate? Maybe you can provide a concrete example? I don't
> >>>> understand the relationship between "the same event is received twice"
> >>>> and a "non-zero commit time".
> >>>>
> >>>>
> >>>> -Matthias
> >>>>
> >>>> On 10/6/20 6:25 AM, Javier Freire Riobo wrote:
> >>>>> Hi all,
> >>>>>
> >>>>> I'd like to propose these changes to the Kafka Streams API.
> >>>>>
> >>>>>
> >>>>
> >>
> https://cwiki.apache.org/confluence/display/KAFKA/KIP-675%3A+Convert+KTable+to+a+KStream+using+the+previous+value
> >>>>>
> >>>>> This is a proposal to convert a KTable to a KStream knowing the
> >> previous
> >>>>> value of the registry.
> >>>>>
> >>>>> I also opened a proof-of-concept PR:
> >>>>>
> >>>>> PR#9321:  https://github.com/apache/kafka/pull/9381
> >>>>>
> >>>>> What do you think?
> >>>>>
> >>>>> Cheers,
> >>>>> Javier Freire
> >>>>>
> >>>>
> >>>
> >>
> >
>

Reply via email to