我正在尝试在KSQL中联接两个表。这个想法是在联接查询的顶部创建一个持久表。我正在使用完全外部联接。
来源1: Kafka主题-> KSQL流-> KSQL表
表顺序中的示例数据:
Key,Product_Name,Product_category
Product_1|Category_1|2018-08-25,Product_1,Category_1
Product_2|Category_2|2018-08-25,Product_2,Category_2
Product_3|Category_3|2018-08-25,Product_3,Category_3
Product_4|Category_4|2018-08-25,Product_4,Category_4
Product_5|Category_5|2018-08-25,Product_5,Category_5
来源2: Kafka主题-> KSQL流-> KSQL表
表产品中的示例数据
Key,Product_Name,Product_category
Product_1|Category_1|2018-08-25,Product_1,Category_1
Product_2|Category_2|2018-08-25,Product_2,Category_2
Product_3|Category_3|2018-08-25,Product_3,Category_3
Product_4|Category_4|2018-08-25,Product_4,Category_4
Product_5|Category_5|2018-08-25,Product_5,Category_5
源1中的数据流是连续的,而固定设置的源2中的数据流是每天一次。
加入查询:
Create Table Order_Joined_Product as
select A.key as Order_Key,A.Product_Name as Order_Product,A.Product_Category as Order_category,B.key as Product_Key,B.Product_Name as Product,B.Product_Category as Product_category from Order as A FULL JOIN
PRODUCT as B on A.Key=B.Key
现在,问题是,如果我对联接表进行计数,那么Order_Key计数将随着时间增加而不断增加,而Product_Key计数将随着时间不断减少。
我想要实现的是在一天结束时看到源1中而不是2中的产品计数,源2中而不是1中的产品计数。