[This topic is pre-release documentation and is subject to change in future releases. Blank topics are included as placeholders.]

2 Stream query strategy/execution tree (stream 0) Lookup in stream 1 (stream 1) Lookup in stream 0 ------ Example 1 a 3 table join " where streamA.id = streamB.id " + " and streamB.id = streamC.id"; => Index propery names for each stream for stream 0 to 4 = "id" => join order, ie. for stream 0 = {1, 2} for stream 1 = {factor [0,2]} for stream 2 = {1, 0} => IndexKeyGen optionalIndexKeyGen, created by nested query plan nodes 3 Stream query strategy (stream 0) Nested iteration Lookup in stream 1 Lookup in stream 2 (stream 1) Factor Lookup in stream 0 Lookup in stream 2 (stream 2) Nested iteration Lookup in stream 1 Lookup in stream 0 ------ Example 2 a 4 table join " where streamA.id = streamB.id " + " and streamB.id = streamC.id"; " and streamC.id = streamD.id"; => join order, ie. for stream 0 = {1, 2, 3} for stream 1 = {factor [0,2], use 2 for 3} for stream 2 = {factor [1,3], use 1 for 0} for stream 3 = {2, 1, 0} concepts... nested iteration, inner loop select * from s1, s2, s3, s4 where s1.id=s2.id and s2.id=s3.id and s3.id=s4.id (stream 0) Nested iteration Lookup in stream 1 Lookup in stream 2 Lookup in stream 3 (stream 1) Factor lookup in stream 0 Nested iteration Lookup in stream 2 Lookup in stream 3 (stream 2) Factor lookup in stream 3 Nested iteration Lookup in stream 1 Lookup in stream 0 (stream 3) Nested iteration Lookup in stream 2 Lookup in stream 1 Lookup in stream 0 ------ Example 4 a 4 table join, orphan table " where streamA.id = streamB.id " + " and streamB.id = streamC.id"; (no table D join criteria) ------ Example 5 a 3 table join with 2 indexes for stream B " where streamA.A1 = streamB.B1 " + " and streamB.B2 = streamC.C1"; (no table D join criteria)

Builds a query plan for 3 or more streams in a join.

Namespace: net.esper.eql.join.plan
Assembly:   NEsper (in NEsper.dll)

Syntax

Visual Basic (Declaration)
Public Class NStreamQueryPlanBuilder
C#
public class NStreamQueryPlanBuilder
Visual C++
public ref class NStreamQueryPlanBuilder

Inheritance Hierarchy

System.Object
  net.esper.eql.join.plan.NStreamQueryPlanBuilder