KSQL表-表联接未按预期工作

时间:2019-08-25 05:34:45

标签: apache-kafka confluent ksql

我正在尝试在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中的产品计数。

0 个答案:

没有答案