Flink SQL的N way join
生活随笔
收集整理的这篇文章主要介绍了
Flink SQL的N way join
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
概述
本文用来详解[1]
SQL结构
[1]中的整个md文件中的sql其实是想表达上图的这个逻辑
这里的SQL写的时候需要注意一个细节:
| connector设置 | |
| 维度表 | 'connector' = 'upsert-kafka' |
| 事实表 | 'connector' = 'kafka' |
所谓的N way Join就是在SQL里面一个fact table和多个维度表进行join,如下:
SELECT t.actual_departure_date, p.first_name,p.last_name,b.channel, os.city AS origin_station,ds.city AS destination_station FROM train_activities t LEFT JOIN booking_channels FOR SYSTEM_TIME AS OF t.actual_departure_date AS b ON t.booking_channel_key = b.booking_channel_key LEFT JOIN passengers FOR SYSTEM_TIME AS OF t.actual_departure_date AS p ON t.passenger_key = p.passenger_key LEFT JOIN stations FOR SYSTEM_TIME AS OF t.actual_departure_date AS os ON t.origin_station_key = os.station_key LEFT JOIN stations FOR SYSTEM_TIME AS OF t.actual_departure_date AS ds ON t.destination_station_key = ds.station_key;
这个实验对硬件资源有些要求,
如果资源不够的话,提交一段时间后,web UI会显示任务会超时
Reference:
[1]https://github.com/ververica/flink-sql-cookbook/blob/master/joins/05/05_star_schema.md
总结
以上是生活随笔为你收集整理的Flink SQL的N way join的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: microsoft edge浏览器好吗(
- 下一篇: mysql8允许外网访问(转载+整理)