环境设置
env = StreamExecutionEnvironment.getExecutionEnvironment();
env.getConfig.disableSysoutLogging();
1,enableClosureCleaner()/disableClosureCleaner()
默认情况下启用闭包清理器。闭包清理器删除了对Flink程序中匿名函数类的不需要的引用。禁用闭包清理器后,可能会出现匿名用户函数引用周围的类,而这些类通常是不可序列化的。这将导致序列化器异常
2,getParallelism()/setParallelism()
设置作业的默认并行度
3,getMaxParallelism()/setMaxParallelism()
为作业设置默认的最大并行度。此设置确定并行度的最大程度,并指定动态缩放的上限
4,getNumberOfExecutionRetries()/setNumberOfExecutionRetries()
设置重新执行失败任务的次数。零值实际上禁用了容错功能。值-1表示应该使用系统默认值(如配置中定义的)。这是不推荐的,而是使用重启策略
5,getExecutionRetryDelay()/setExecutionRetryDelay()
设置作业失败后系统在重新执行之前等待的毫秒延迟。延迟在任务管理器上成功停止所有任务之后启动,一旦延迟过去,任务将重新启动。这个参数对于延迟重新执行非常有用,以便让某些超时相关的故障(如未完全超时的断开连接)充分地显示出来,然后再尝试重新执行,并立即由于相同的问题再次失败。此参数仅在执行重试次数为一个或多个时才有效。这是萧条
6,getExecutionMode()/setExecutionMode()
默认的执行模式是流水线。设置执行模式以执行程序。执行模式定义数据交换是以批处理方式执行还是以流水线方式执行
7,enableForceKryo()/disableForceKryo()
Kryo在默认情况下不是强制的。强制GenericTypeInformation使用用于POJO的Kryo序列化器,即使我们可以将它们分析为POJO。在某些情况下,这可能更可取。例如,当Flink的内部序列化器无法正确处理POJO时
8,enableForceAvro()/disableForceAvro()
Avro不是默认强制的。强制Flink AvroTypeInformation使用Avro序列化器而不是Kryo来序列化Avro pojo。
9,disableSysoutLogging()/enableSysoutLogging()
将作业管理器状态更新打印到系统。默认情况下。此设置允许禁用此行为
10,setGlobalJobParameters(parameterTool)/getGlobalJobParameters()
此方法允许用户将自定义对象设置为作业的全局配置。因为ExecutionConfig在所有用户定义的函数中都是可访问的,所以这是使配置在作业中全局可用的一种简单方法
11,setRestartStrategy
设置重试机制,RestartStrategies.fixedDelayRestart(5,10000),重试5次,每次间隔10000毫秒
12,setStreamTimeCharacteristic
设置流的时间(IngestionTime:数据进入流的时间,ProcessingTime:处理数据的时间,EventTime:数据自带的时间戳)