The Beam Runner API doc needs a lot of updating to discuss impulse and SDF,
(and deprecate / remove Read): https://s.apache.org/beam-runner-api
It could also use examples from Go/Python code base.

Alternatively we could start to codify this information on the Apache Beam
website as the definitions/contracts are less influx.

On Fri, May 18, 2018 at 7:49 AM Eugene Kirpichov <kirpic...@google.com>
wrote:

> Hi Ismael,
> Impulse is a primitive necessary for the Portability world, where sources
> do not exist. Impulse is the only possible root of the pipeline, it emits a
> single empty byte array, and it's all DoFn's and SDF's from there. E.g.
> when using Fn API, Read.from(BoundedSource) is translated into: Impulse +
> ParDo(emit source) + ParDo(call .split()) + reshuffle + ParDo(call
> .createReader() and read from it).
> Agree that it makes sense to document it somewhere on the portability page.
>
> On Fri, May 18, 2018 at 7:21 AM Jean-Baptiste Onofré <j...@nanthrax.net>
> wrote:
>
>> Fully agree.
>>
>> I already started to take a look.
>>
>> Regards
>> JB
>>
>> On 18/05/2018 16:12, Ismaël Mejía wrote:
>> > I have seen multiple mentions of 'Impulse' in JIRAs and some on other
>> > discussions, but have not seen any document or concrete explanation on
>> > what's Impulse and why we need it. This seems like an internal
>> > implementation detail but it is probably a good idea to explain it
>> > somewhere (my excuses if this is in some document and I missed it).
>> >
>>
>

Reply via email to