1、AsyncDataStream有2个方法:unorderedWait表示数据不需要关注顺序,处理完立即发送,orderedWait表示数据需要关注顺序,为了实现该目标,操作算子会在该结果记录之前的记录为发送之前缓存该记录。这往往会引入额外的延迟和一些Checkpoint负载,因为相比于无序模式结果记录会保存在Checkpoint状态内部较长的时间。
代码案例:
//异步查询:Flink处理数据时候,遇到比较耗时的操作时,需要异步处理数据。
SingleOutputStreamOperator<JSONObject> jsonObjectSingleOutputStream = AsyncDataStream
.unorderedWait(
StreamOperator, new JDBCAsyncFunctionAnalysis(), 10 * 60 * 1000, TimeUnit.MICROSECONDS, 10).process(
new DataGovernanceFunction(context)
).setParallelism(opertatorPara);