Hi Cheng, The docs here <https://ci.apache.org/projects/flink/flink-docs-master/dev/table/tableApi.html#joins> states full outer joins are only available for batch (I am not sure if I am reading that correctly). I am trying to understand how two unbounded streams can be joined like a batch? If we have to do batch join then it *must be* bounded right? If so, how do we bound? I can think Time Window is one way to bound but other than that if I execute the below join query on the unbounded stream I am not even sure how that works? A row from one table can join with a row from another table and that row can come anytime in future right if it is unbounded. so I am sorry I am failing to understand.
SELECT * FROM Orders o, Shipments s WHERE o.id = s.orderId Thanks! On Wed, Mar 7, 2018 at 3:49 AM, Hequn Cheng <chenghe...@gmail.com> wrote: > Hi kant, > > It seems that you mean the Time-windowed Join. The Time-windowed Joins are > supported > now. You can check more details with the docs given by Xingcan. > As for the non-window join, it is used to join two unbounded stream and > the semantic is very like batch join. > > Time-windowed Join: > >> SELECT * >> FROM Orders o, Shipments s >> WHERE o.id = s.orderId AND >> o.ordertime BETWEEN s.shiptime - INTERVAL '4' HOUR AND s.shiptime > > > Non-windowed Join: > >> SELECT * >> FROM Orders o, Shipments s >> WHERE o.id = s.orderId > > > On Wed, Mar 7, 2018 at 7:02 PM, kant kodali <kanth...@gmail.com> wrote: > >> Hi! >> >> Thanks for all this. and yes I was indeed talking about SQL/Table API so >> I will keep track of these tickets! BTW, What is non-windowed Join? I >> thought stream-stream-joins by default is a stateful operation so it has to >> be within some time window right? Also does the output of stream-stream >> joins emit every time so we can see the state of the join at any given time >> or only when the watermark elapses and join result fully materializes? >> >> On a side note, Full outer join seems to be the most useful for my use >> case. so the moment its available in master I can start playing and testing >> it! >> >> On Tue, Mar 6, 2018 at 10:39 PM, Hequn Cheng <chenghe...@gmail.com> >> wrote: >> >>> Hi Kant, >>> >>> The stream-stream outer joins are work in progress now(left/right/full), >>> and will probably be ready before the end of this month. You can check the >>> progress from[1]. >>> >>> Best, Hequn >>> >>> [1] https://issues.apache.org/jira/browse/FLINK-5878 >>> >>> On Wed, Mar 7, 2018 at 1:01 PM, Xingcan Cui <xingc...@gmail.com> wrote: >>> >>>> Hi Kant, >>>> >>>> I suppose you refer to the stream join in SQL/Table API since the outer >>>> join for windowed-streams can always be achieved with the `JoinFunction` in >>>> DataStream API. >>>> >>>> There are two kinds of stream joins, namely, the time-windowed join and >>>> the non-windowed join in Flink SQL/Table API [1, 2]. The time-windowed >>>> outer join has been supported since version 1.5 and the non-windowed outer >>>> join is still work in progress. >>>> >>>> Hope that helps. >>>> >>>> Best, >>>> Xingcan >>>> >>>> [1] https://ci.apache.org/projects/flink/flink-docs-master/d >>>> ev/table/tableApi.html#joins >>>> [2] https://ci.apache.org/projects/flink/flink-docs-master/d >>>> ev/table/sql.html#joins >>>> >>>> >>>> On 7 Mar 2018, at 12:45 AM, kant kodali <kanth...@gmail.com> wrote: >>>> >>>> Hi All, >>>> >>>> Does Flink support stream-stream outer joins in the latest version? >>>> >>>> Thanks! >>>> >>>> >>>> >>> >> >