|
Hi:
各位大佬,请教一个问题。
我再flink-1.12.0上自定义一个DynamicTableSource,并支持SupportsFilterPushDown,SupportsProjectionPushDown等特性。
然后我的ScanRuntimeProvider使用的是InputFormatProvider。
我运行时,下推的filters在创建InputFormat和copy()方法之后,那我还怎么在InputFormat中根据filters去过滤数据源呢?
我的理解是SupportsFilterPushDown和SupportsProjectionPushDown中的方法应该在DynamicTableSource的copy()方法之后被调用,这样我先拿到project和filter,再去创建InputFormat,这样我就可以根据filter在数据源的地方将不需要的那部分数据过滤掉,使到达flink时的数据只是我需要的那部分数据。可是目前这些方法的调用顺序好像是在InputFormat创建之前。
望知道的告知一下,感谢!
祝好!
|