You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@samza.apache.org by Chad Scribner <Ch...@xls.xerox.com> on 2016/02/23 17:14:22 UTC

Question about Stream-Stream join

Hi All,

First time emailing the list.  I just had a question about doing a Stream-Stream join in Samza.

What I'm attempting to do is have a Load stream which contains events of when an object was loaded and an Action stream which contains events that are taken on the objects in the Load stream.  Both streams have a single partition at the moment.  The defined job listens to both of these streams and round robin's the messages from each stream.

And now my question.  Is determining the source of each message as simple as the below?

# Pseudo code -- body of myJob.process()
if (job.stream == Load) {
  // do loading code
} else if (job.stream == Action) {
  // do action code
}

Chad Scribner
Senior Software Engineer (OmniX)
Xerox Litigation Services
80 State Street
Suite 300
Albany, NY 12207
518-328-1335

Re: Question about Stream-Stream join

Posted by Yi Pan <ni...@gmail.com>.
Hi, Chad,

The following code will let you find the stream name:
{code}
envelope.getSystemStreamPartition().getSystemStream().getStream();
{code}

Thanks!

-Yi

On Tue, Feb 23, 2016 at 8:14 AM, Chad Scribner <Ch...@xls.xerox.com>
wrote:

> Hi All,
>
> First time emailing the list.  I just had a question about doing a
> Stream-Stream join in Samza.
>
> What I'm attempting to do is have a Load stream which contains events of
> when an object was loaded and an Action stream which contains events that
> are taken on the objects in the Load stream.  Both streams have a single
> partition at the moment.  The defined job listens to both of these streams
> and round robin's the messages from each stream.
>
> And now my question.  Is determining the source of each message as simple
> as the below?
>
> # Pseudo code -- body of myJob.process()
> if (job.stream == Load) {
>   // do loading code
> } else if (job.stream == Action) {
>   // do action code
> }
>
> Chad Scribner
> Senior Software Engineer (OmniX)
> Xerox Litigation Services
> 80 State Street
> Suite 300
> Albany, NY 12207
> 518-328-1335
>